From bdbc7dffb0973f44d338ec860e9e9c2491de7a23 Mon Sep 17 00:00:00 2001 From: Nick Landers Date: Wed, 15 Jan 2025 17:42:24 -0700 Subject: [PATCH] feat: Add tracing (#28) * Initial logfire-api integration. * Small docs fix * soften some opinions in docs * Add completion tracing. Update docs. --- README.md | 6 +- docs/assets/tracing_logfire.png | Bin 0 -> 272341 bytes docs/index.md | 18 ++--- docs/topics/prompt-functions.md | 29 +++++--- docs/topics/tracing.md | 82 ++++++++++++++++++++++ mkdocs.yml | 33 ++++----- poetry.lock | 13 +++- pyproject.toml | 1 + rigging/chat.py | 117 ++++++++++++++++++++++++-------- rigging/completion.py | 109 ++++++++++++++++++++++++----- rigging/prompt.py | 79 ++++++++++++++------- rigging/tool/api.py | 24 ++++--- rigging/tracing.py | 5 ++ rigging/util.py | 45 ++++++++++++ 14 files changed, 447 insertions(+), 114 deletions(-) create mode 100644 docs/assets/tracing_logfire.png create mode 100644 docs/topics/tracing.md create mode 100644 rigging/tracing.py diff --git a/README.md b/README.md index f8834ef..9ea8a7c 100644 --- a/README.md +++ b/README.md @@ -15,13 +15,14 @@ Simplify using LLMs in code
-Rigging is a lightweight LLM framework built on Pydantic XML. The goal is to make leveraging language models in production code as simple and effective as possible. Here are the highlights: +Rigging is a lightweight LLM framework to make using language models in production code as simple and effective as possible. Here are the highlights: - **Structured Pydantic models** can be used interchangably with unstructured text output. - LiteLLM as the default generator giving you **instant access to a huge array of models**. - Define prompts as python functions with **type hints and docstrings**. -- Simple **tool calling** even for models which don't support them at the API. +- Simple **tool use**, even for models which don't support them at the API. - Store different models and configs as **simple connection strings** just like databases. +- Integrated tracing support with [Logfire](https://logfire.pydantic.dev/docs/). - Chat templating, forking, continuations, generation parameter overloads, stripping segments, etc. - Async batching and fast iterations for **large scale generation**. - Metadata, callbacks, and data format conversions. @@ -120,6 +121,7 @@ Want more? - Use [structured pydantic parsing](https://rigging.dreadnode.io/#basic-parsing) - Check out [raw completions](https://rigging.dreadnode.io/topics/completions/) - Give the LLM [access to tools](https://rigging.dreadnode.io/topics/tools/) +- Track behavior with [tracing](https://rigging.dreadnode.io/topics/tracing/) - Play with [generation params](https://rigging.dreadnode.io/topics/generators/#overload-generation-params) - Use [callbacks in the pipeline](https://rigging.dreadnode.io/topics/callbacks-and-mapping/) - Scale up with [iterating and batching](https://rigging.dreadnode.io/topics/iterating-and-batching/) diff --git a/docs/assets/tracing_logfire.png b/docs/assets/tracing_logfire.png new file mode 100644 index 0000000000000000000000000000000000000000..8a5b0e0f931d0def622fad2bf54f8f523e69113b GIT binary patch literal 272341 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

)6G?&y*ag<0xHx8x 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

?Y^ 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 str: + """Summarize this text.""" + +generator = rg.get_generator("gpt-4o-mini") + +await summarize.bind(generator)("...") +``` ### Templates and Docstrings @@ -334,7 +347,7 @@ processed correctly. # ``` -You can also embedd a [`Chat`][rigging.chat.Chat] object inside a some objects, which +You can also embed a [`Chat`][rigging.chat.Chat] object inside other objects, which will be excluded from any prompt guidance, but supplied the value when the prompt is executed. This is great for gathering both structured data and the original chat. @@ -422,11 +435,11 @@ Prompt objects expose the following methods for execution: *(Available if the prompt was supplied/bonded to a pipeline or generator)* -You can also run a prompt with a specific `ChatPipeline` by passing it to any of: +You can also bind a prompt at runtime with any of the following: -- [`ChatPipeline.run_prompt()`][rigging.chat.ChatPipeline.run_prompt] -- [`ChatPipeline.run_prompt_many()`][rigging.chat.ChatPipeline.run_prompt_many] -- [`ChatPipeline.run_prompt_over()`][rigging.chat.ChatPipeline.run_prompt_over] +- [`Prompt.bind()`][rigging.prompt.Prompt.bind] +- [`Prompt.bind_many()`][rigging.prompt.Prompt.bind_many] +- [`Prompt.bind_over()`][rigging.prompt.Prompt.bind_over] !!! Note "Pipeline Context" @@ -469,7 +482,7 @@ You can also run a prompt with a specific `ChatPipeline` by passing it to any of def write_code(description: str, language: str = "python") -> code_str: """Write a single function.""" - code = await pipeline.run_prompt(write_code, "Calculate the factorial of a number.") + code = await write_code.bind(pipeline)("Calculate the factorial of a number.") ``` === "Run Manually" diff --git a/docs/topics/tracing.md b/docs/topics/tracing.md new file mode 100644 index 0000000..38b1aae --- /dev/null +++ b/docs/topics/tracing.md @@ -0,0 +1,82 @@ +# Tracing + +Rigging integrates with the [Logfire](https://logfire.pydantic.dev/docs/) library for exposing tracing information +about execution. Specifically we use the logfire-api no-op package, making it optional for users with no overhead +if you don't need it. + +Logfire is capable of reporting trace information to any Open Telemetry compatible system, and provides some +convient abstractions on top of the standard open-telemetry-sdk which we like. If the `logfire` package is installed and +configured, details about pipelines, prompts, and tools will be traced during rigging use. + +You can configure Logfire to use [alternative backends](https://logfire.pydantic.dev/docs/how-to-guides/alternative-backends/) +as needed to integrate with your preferred tracing stack. + +```py +import rigging as rg +import logfire + +logfire.configure() + +@rg.prompt(generator_id="gpt-4o") +async def summarize(content: str) -> str: + """ + Summarize the content into 1-2 sentences then save it + """ + +summarize.watch(rg.watchers.write_chats_to_jsonl("chats.jsonl")) + +text = """ +Revachol is located on the island of Le Caillou, also called "The Pebble" on the northeast side of the +Insulindian Isola, on the world's largest body of water: the Insulindic. The city itself has a radius +of 80 kilometres and is split by the River Esperance into Revachol East and Revachol West. The north +side of the island is shattered by the delta of the Esperance, and is named La Delta. +""" + +await summarize.run_many(3, text) + +# 23:46:31.484 Prompt summarize() (x3) +# 23:46:31.485 Chat with litellm!gpt-4o (x3) +# 23:46:32.874 Watch with rigging.watchers.write_chats_to_jsonl() +``` + +???+ "What's Stored?" + + Rigging will attach call parameters and results for both tools and prompt functions, as well + as finalized chat objects at the end of a pipeline. Logfire will serialize these items as + JSON values inside attributes, and include a dynamic json schema for reference. When using + their platform, these items deserialize into the web view directly. + +![Logfire trace](../assets/tracing_logfire.png) + +## Inference Tracing + +We've opted to exclude tracing at the generator level in Rigging (for now) and focus on +instrumenting higher-order abstractions like pipelines, tools, etc. which are specific to the framework. + +There are a suite of powerful instrumentation libraries (including Logfire!) which will add tracing +to underlying libraries like LiteLLM (recommended), OpenAI, Anthropic, VertexAI, etc. These snap +right into the tracing spans from rigging, and provide insight into the raw inference +traffic before it's sent to API endpoints and inference libraries. + +- [LiteLLM - Logfire](https://docs.litellm.ai/docs/observability/logfire_integration) +- [LiteLLM - OpenTelemetry](https://docs.litellm.ai/docs/observability/opentelemetry_integration) +- [Logfire - Integrations](https://logfire.pydantic.dev/docs/integrations/) +- [TraceLoop - openllmetry](https://github.com/traceloop/openllmetry) + +Here is an example of adding LiteLLM tracing on top of rigging: + +```py +import rigging as rg +import logfire +import litellm + +logfire.configure() + +os.environ.setdefault("LOGFIRE_TOKEN", "") # (1)! +litellm.callbacks = ["logfire"] + +# ... +``` + +1. As of writing, LiteLLM requires this environment var, even if empty +and logfire is managing tokens for you diff --git a/mkdocs.yml b/mkdocs.yml index af7034f..1c36754 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -5,21 +5,23 @@ site_url: https://rigging.dreadnode.io repo_url: https://github.com/dreadnode/rigging nav: - - Home: index.md - - Topics: - - Workflow: topics/workflow.md - - Models: topics/models.md - - Generators: topics/generators.md - - Chats and Messages: topics/chats-and-messages.md - - Prompt Functions: topics/prompt-functions.md - - Completions: topics/completions.md - - Callbacks and Mapping: topics/callbacks-and-mapping.md - - Iterating and Batching: topics/iterating-and-batching.md - - Tools: topics/tools.md - - Serialization: topics/serialization.md - - Logging: topics/logging.md - - Migrations: topics/migrations.md - - Principles: topics/principles.md + - Home: + - index.md + - Topics: + - Workflow: topics/workflow.md + - Models: topics/models.md + - Generators: topics/generators.md + - Chats and Messages: topics/chats-and-messages.md + - Prompt Functions: topics/prompt-functions.md + - Completions: topics/completions.md + - Callbacks and Mapping: topics/callbacks-and-mapping.md + - Iterating and Batching: topics/iterating-and-batching.md + - Tools: topics/tools.md + - Tracing: topics/tracing.md + - Serialization: topics/serialization.md + - Logging: topics/logging.md + - Migrations: topics/migrations.md + - Principles: topics/principles.md - API: - rigging.chat: api/chat.md - rigging.completion: api/completion.md @@ -49,7 +51,6 @@ theme: features: - content.code.copy - content.code.annotate - - toc.integrate - navigation.footer - navigation.indexes - navigation.sections diff --git a/poetry.lock b/poetry.lock index c7dfe87..c919da3 100644 --- a/poetry.lock +++ b/poetry.lock @@ -2215,6 +2215,17 @@ packaging = "*" pydantic = ">=1.10.8" pyyaml = "*" +[[package]] +name = "logfire-api" +version = "3.1.1" +description = "Shim for the Logfire SDK which does nothing unless Logfire is installed" +optional = false +python-versions = ">=3.8" +files = [ + {file = "logfire_api-3.1.1-py3-none-any.whl", hash = "sha256:00e6e015ffc9eccf5afc2c84a71b596999c00e64fdf886f797e1c781025f3b51"}, + {file = "logfire_api-3.1.1.tar.gz", hash = "sha256:9eba3f3fb25d07d1fc1344c9cb1de4b9f9d55a2bc6b39c4d5f5227b6b1ea3532"}, +] + [[package]] name = "loguru" version = "0.7.3" @@ -5740,4 +5751,4 @@ examples = ["aiodocker", "asyncssh", "click", "httpx", "websockets"] [metadata] lock-version = "2.0" python-versions = "^3.9" -content-hash = "f975f6ae0ec3cbd067465d8b38dbadc9398e48f549b2804bdc5c4572403db479" +content-hash = "c4dbf8865bf5f419e85eb928edd48319901a65c488f95fdaabb7530618983424" diff --git a/pyproject.toml b/pyproject.toml index e808829..5389c64 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -31,6 +31,7 @@ click = { version = "^8.1.7", optional = true } httpx = { version = "^0.27.0", optional = true } aiodocker = { version = "^0.22.2", optional = true } websockets = { version = "^13.0", optional = true } +logfire-api = "^3.1.1" [tool.poetry.extras] examples = ["asyncssh", "click", "httpx", "aiodocker", "websockets"] diff --git a/rigging/chat.py b/rigging/chat.py index 5b8f318..ccb61ad 100644 --- a/rigging/chat.py +++ b/rigging/chat.py @@ -25,6 +25,8 @@ from rigging.model import Model, ModelT, SystemErrorModel, ValidationErrorModel from rigging.tool.api import ApiTool, ToolChoice from rigging.tool.native import Tool, ToolCalls, ToolDescriptionList, ToolResult, ToolResults, system_tool_extension +from rigging.tracing import Span, tracer +from rigging.util import get_qualified_name if t.TYPE_CHECKING: from elasticsearch import AsyncElasticsearch @@ -694,7 +696,7 @@ async def process(chat: Chat) -> Chat | None: The current instance of the chat. """ if not asyncio.iscoroutinefunction(callback): - raise TypeError(f"Callback '{callback.__name__}' must be an async function") # type: ignore + raise TypeError(f"Callback '{get_qualified_name(callback)}' must be an async function") self.then_callbacks.append(callback) return self @@ -722,7 +724,7 @@ async def process(chats: list[Chat]) -> list[Chat]: The current instance of the chat. """ if not asyncio.iscoroutinefunction(callback): - raise TypeError(f"Callback '{callback.__name__}' must be an async function") # type: ignore + raise TypeError(f"Callback '{get_qualified_name(callback)}' must be an async function") self.map_callbacks.append(callback) return self @@ -1094,19 +1096,27 @@ def _until( running_messages = step_messages if attempt_recovery else [] next_message: Message - for _ in range(max_rounds): - logger.trace( - f"_until({callback.__call__.__name__}) round {_ + 1}/{max_rounds} (attempt_recovery={attempt_recovery})" - ) - next_message = yield running_messages - should_continue, step_messages = callback(next_message) - logger.trace(f" |- returned {should_continue} with {len(step_messages)} new messages)") + for _round in range(1, max_rounds + 1): + with tracer.span( + "Until with {callback}() ({round}/{max_rounds})", + callback=get_qualified_name(callback), + round=_round, + max_rounds=max_rounds, + attempt_recovery=attempt_recovery, + drop_dialog=drop_dialog, + ): + logger.trace( + f"_until({get_qualified_name(callback)}) round {_round}/{max_rounds} (attempt_recovery={attempt_recovery})" + ) + next_message = yield running_messages + should_continue, step_messages = callback(next_message) + logger.trace(f" |- returned {should_continue} with {len(step_messages)} new messages)") - if attempt_recovery: - running_messages += step_messages + if attempt_recovery: + running_messages += step_messages - if not should_continue: - return step_messages if drop_dialog else running_messages + if not should_continue: + return step_messages if drop_dialog else running_messages # !attempt_recovery -> Return just the latest generation # attempt_recovery & drop_dialog -> Return just the latest generation @@ -1142,7 +1152,16 @@ async def _watch_callback(self, chats: list[Chat]) -> None: # Given that these watch callbacks don't return a value, # we should be safe to run them internally. - coros = [callback(chats) for callback in self.watch_callbacks] + def wrap_watch_callback(callback: WatchChatCallback) -> WatchChatCallback: + async def traced_watch_callback(chats: list[Chat]) -> None: + with tracer.span( + "Watch with {callback}()", callback=get_qualified_name(callback), chat_count=len(chats) + ): + await callback(chats) + + return traced_watch_callback + + coros = [wrap_watch_callback(callback)(chats) for callback in self.watch_callbacks] await asyncio.gather(*coros) # Run helper methods @@ -1156,18 +1175,26 @@ async def _post_run(self, chats: list[Chat], on_failed: FailMode) -> ChatList: # previous calls being ran. for map_callback in self.map_callbacks: - chats = await map_callback(chats) - if not all(isinstance(c, Chat) for c in chats): - raise ValueError( - f".map() callback must return a Chat object or None ({map_callback.__call__.__name__})" - ) + with tracer.span("Map with {callback}()", callback=get_qualified_name(map_callback), chat_count=len(chats)): + chats = await map_callback(chats) + if not all(isinstance(c, Chat) for c in chats): + raise ValueError( + f".map() callback must return a Chat object or None ({get_qualified_name(map_callback)})" + ) + + def wrap_then_callback(callback: ThenChatCallback) -> ThenChatCallback: + async def traced_then_callback(chat: Chat) -> Chat | None: + with tracer.span("Then with {callback}()", callback=get_qualified_name(callback)): + return await callback(chat) + + return traced_then_callback for then_callback in self.then_callbacks: - coros = [then_callback(chat) for chat in chats] + coros = [wrap_then_callback(then_callback)(chat) for chat in chats] new_chats = await asyncio.gather(*coros) if not all(isinstance(c, Chat) or c is None for c in new_chats): raise ValueError( - f".then() callback must return a Chat object or None ({then_callback.__call__.__name__})" + f".then() callback must return a Chat object or None ({get_qualified_name(then_callback)})" ) chats = [new or chat for new, chat in zip(new_chats, chats)] @@ -1269,7 +1296,7 @@ def _create_failed_chat(self, state: RunState, error: Exception, batch_mode: boo error=error, ) - async def _run(self, states: list[RunState], on_failed: FailMode, batch_mode: bool = False) -> ChatList: + async def _run(self, span: Span, states: list[RunState], on_failed: FailMode, batch_mode: bool = False) -> ChatList: pending_states = states while pending_states: try: @@ -1289,6 +1316,10 @@ async def _run(self, states: list[RunState], on_failed: FailMode, batch_mode: bo # We will apply the error to all chats in the batch as we can't # tell which chat caused the error right now. + + span.set_attribute("failed", True) + span.set_attribute("error", error) + for state in states: state.chat = self._create_failed_chat(state, error, batch_mode) @@ -1307,6 +1338,8 @@ async def _run(self, states: list[RunState], on_failed: FailMode, batch_mode: bo raise # exhausted.messages holds the current messages when the error occured, # so we'll pass them into the chat as the last generated messages. + span.set_attribute("failed", True) + span.set_attribute("error", exhausted) state.chat = self._create_chat( state, exhausted.messages, inbound, batch_mode, failed=True, error=exhausted ) @@ -1319,6 +1352,8 @@ async def _run(self, states: list[RunState], on_failed: FailMode, batch_mode: bo or any(isinstance(error, t) for t in self.errors_to_exclude) ): raise + span.set_attribute("failed", True) + span.set_attribute("error", error) state.chat = self._create_chat(state, [], inbound, batch_mode, failed=True, error=error) pending_states = [s for s in pending_states if s.chat is None] @@ -1334,7 +1369,9 @@ async def _run(self, states: list[RunState], on_failed: FailMode, batch_mode: bo for state in completed_states: state.watched = True - return await self._post_run([s.chat for s in states if s.chat is not None], on_failed) + chats = await self._post_run([s.chat for s in states if s.chat is not None], on_failed) + span.set_attribute("chats", chats) + return chats # Single messages @@ -1359,7 +1396,15 @@ async def run(self, *, allow_failed: bool = False, on_failed: FailMode | None = "Cannot use 'skip' mode with single message generation (pass allow_failed=True or on_failed='include'/'raise')" ) - return (await self.run_many(1, on_failed=on_failed))[0] + on_failed = on_failed or self.on_failed + states = self._initialize_states(1) + + with tracer.span( + "Chat with {generator_id}", + generator_id=self.generator.to_identifier(), + params=self.params.to_dict() if self.params is not None else {}, + ) as span: + return (await self._run(span, states, on_failed))[0] __call__ = run @@ -1385,7 +1430,14 @@ async def run_many( """ on_failed = on_failed or self.on_failed states = self._initialize_states(count, params) - return await self._run(states, on_failed) + + with tracer.span( + "Chat with {generator_id} (x{count})", + count=count, + generator_id=self.generator.to_identifier(), + params=self.params.to_dict() if self.params is not None else {}, + ) as span: + return await self._run(span, states, on_failed) # Batch messages @@ -1417,7 +1469,14 @@ async def run_batch( """ on_failed = on_failed or self.on_failed states = self._initialize_batch_states(many, params) - return await self._run(states, on_failed, batch_mode=True) + + with tracer.span( + "Chat batch with {generator_id} ({count})", + count=len(states), + generator_id=self.generator.to_identifier(), + params=self.params.to_dict() if self.params is not None else {}, + ) as span: + return await self._run(span, states, on_failed, batch_mode=True) # Generator iteration @@ -1450,9 +1509,9 @@ async def run_over( sub.generator = generator coros.append(sub.run(allow_failed=(on_failed != "raise"))) - chats = await asyncio.gather(*coros) - - return await self._post_run(chats, on_failed) + with tracer.span("Chat over {count} generators", count=len(coros)): + chats = await asyncio.gather(*coros) + return await self._post_run(chats, on_failed) # Prompt functions diff --git a/rigging/completion.py b/rigging/completion.py index 6ddef76..da48ff3 100644 --- a/rigging/completion.py +++ b/rigging/completion.py @@ -20,6 +20,8 @@ from rigging.generator import GenerateParams, Generator, get_generator from rigging.generator.base import GeneratedText, StopReason, Usage # noqa: TCH001 from rigging.parsing import parse_many +from rigging.tracing import Span, tracer +from rigging.util import get_qualified_name if t.TYPE_CHECKING: from rigging.chat import FailMode @@ -305,7 +307,7 @@ def catch(self, *errors: type[Exception], on_failed: FailMode | None = None) -> on_failed: How to handle failures in the pipeline unless overriden in calls. Returns: - The updated ChatPipeline object. + The updated CompletionPipeline object. """ self.errors_to_fail_on.update(errors) self.on_failed = on_failed or self.on_failed @@ -546,7 +548,16 @@ def _until_parse_callback(self, text: str) -> bool: return False async def _watch_callback(self, completions: list[Completion]) -> None: - coros = [callback(completions) for callback in self.watch_callbacks] + def wrap_watch_callback(callback: WatchCompletionCallback) -> WatchCompletionCallback: + async def traced_watch_callback(completions: list[Completion]) -> None: + with tracer.span( + "Watch with {callback}()", callback=get_qualified_name(callback), competion_count=len(completions) + ): + await callback(completions) + + return traced_watch_callback + + coros = [wrap_watch_callback(callback)(completions) for callback in self.watch_callbacks] await asyncio.gather(*coros) # TODO: It's opaque exactly how we should blend multiple @@ -585,13 +596,38 @@ async def _post_run(self, completions: list[Completion], on_failed: FailMode) -> if on_failed == "skip": completions = [c for c in completions if not c.failed] + # These have to be sequenced to support the concept of + # a pipeline where future then/map calls can depend on + # previous calls being ran. + for map_callback in self.map_callbacks: - completions = await map_callback(completions) + with tracer.span( + "Map with {callback}()", + callback=get_qualified_name(map_callback), + completion_count=len(completions), + ): + completions = await map_callback(completions) + if not all(isinstance(c, Completion) for c in completions): + raise ValueError( + f".map() callback must return a Completion object or None ({get_qualified_name(map_callback)})" + ) + + def wrap_then_callback(callback: ThenCompletionCallback) -> ThenCompletionCallback: + async def traced_then_callback(completion: Completion) -> Completion | None: + with tracer.span("Then with {callback}()", callback=get_qualified_name(callback)): + return await callback(completion) + + return traced_then_callback for then_callback in self.then_callbacks: - coros = [then_callback(chat) for chat in completions] + coros = [wrap_then_callback(then_callback)(completion) for completion in completions] new_completions = await asyncio.gather(*coros) - completions = [new or chat for new, chat in zip(new_completions, completions)] + if not all(isinstance(c, Completion) or c is None for c in new_completions): + raise ValueError( + f".then() callback must return a Completion object or None ({get_qualified_name(then_callback)})" + ) + + completions = [new or completion for new, completion in zip(new_completions, completions)] return completions @@ -632,7 +668,17 @@ def _fit_params( params = [self.params.merge_with(p) for p in params] return [(p or GenerateParams()) for p in params] - async def _run(self, states: list[RunState], on_failed: FailMode, batch_mode: bool = False) -> list[Completion]: + def _initialize_states( + self, count: int, params: t.Sequence[t.Optional[GenerateParams]] | None = None + ) -> list[RunState]: + states = [RunState(self.text, p, self._process()) for p in self._fit_params(count, params)] + for state in states: + next(state.processor) + return states + + async def _run( + self, span: Span, states: list[RunState], on_failed: FailMode, batch_mode: bool = False + ) -> list[Completion]: pending_states = states while pending_states: try: @@ -644,6 +690,9 @@ async def _run(self, states: list[RunState], on_failed: FailMode, batch_mode: bo if on_failed == "raise" or not any(isinstance(e, t) for t in self.errors_to_fail_on): raise + span.set_attribute("failed", True) + span.set_attribute("error", e) + for state in pending_states: state.completion = self._create_failed_completion(state, e) else: @@ -669,6 +718,10 @@ async def _run(self, states: list[RunState], on_failed: FailMode, batch_mode: bo failed = True error = e + if error is not None: + span.set_attribute("failed", True) + span.set_attribute("error", error) + state.completion = self._create_completion(state, output, inbound, failed, error) pending_states = [s for s in pending_states if s.completion is None] @@ -679,7 +732,9 @@ async def _run(self, states: list[RunState], on_failed: FailMode, batch_mode: bo for state in to_watch_states: state.watched = True - return await self._post_run([s.completion for s in states if s.completion is not None], on_failed) + completions = await self._post_run([s.completion for s in states if s.completion is not None], on_failed) + span.set_attribute("completions", completions) + return completions async def run(self, *, allow_failed: bool = False, on_failed: FailMode | None = None) -> Completion: """ @@ -692,7 +747,7 @@ async def run(self, *, allow_failed: bool = False, on_failed: FailMode | None = (this is used as an alternative to allow_failed) Returns: - The generated Chat. + The generated Completion. """ if on_failed is None: on_failed = "include" if allow_failed else self.on_failed @@ -702,7 +757,15 @@ async def run(self, *, allow_failed: bool = False, on_failed: FailMode | None = "Cannot use 'skip' mode with single completion generation (pass allow_failed=True or on_failed='include'/'raise')" ) - return (await self.run_many(1, on_failed=on_failed))[0] + on_failed = on_failed or self.on_failed + states = self._initialize_states(1) + + with tracer.span( + "Completion with {generator_id}", + generator_id=self.generator.to_identifier(), + params=self.params.to_dict() if self.params is not None else {}, + ) as span: + return (await self._run(span, states, on_failed))[0] __call__ = run @@ -727,12 +790,15 @@ async def run_many( A list of generatated Completions. """ on_failed = on_failed or self.on_failed + states = self._initialize_states(count, params) - states: list[RunState] = [RunState(self.text, p, self._process()) for p in self._fit_params(count, params)] - for state in states: - next(state.processor) - - return await self._run(states, on_failed) + with tracer.span( + "Completion with {generator_id} (x{count})", + count=count, + generator_id=self.generator.to_identifier(), + params=self.params.to_dict() if self.params is not None else {}, + ) as span: + return await self._run(span, states, on_failed) # Batch completions @@ -764,7 +830,13 @@ async def run_batch( for state in states: next(state.processor) - return await self._run(states, on_failed, batch_mode=True) + with tracer.span( + "Completion batch with {generator_id} ({count})", + count=len(states), + generator_id=self.generator.to_identifier(), + params=self.params.to_dict() if self.params is not None else {}, + ) as span: + return await self._run(span, states, on_failed, batch_mode=True) # Generator iteration @@ -783,7 +855,7 @@ async def run_over( on_failed: The behavior when a message fails to generate. Returns: - A list of generatated Chats. + A list of generatated Completions. """ on_failed = on_failed or self.on_failed @@ -797,5 +869,6 @@ async def run_over( sub.generator = generator coros.append(sub.run(allow_failed=(on_failed != "raise"))) - completions = await asyncio.gather(*coros) - return await self._post_run(completions, on_failed) + with tracer.span("Completion over {count} generators", count=len(coros)): + completions = await asyncio.gather(*coros) + return await self._post_run(completions, on_failed) diff --git a/rigging/prompt.py b/rigging/prompt.py index e560b63..66f2970 100644 --- a/rigging/prompt.py +++ b/rigging/prompt.py @@ -9,6 +9,7 @@ import inspect import re import typing as t +from collections import OrderedDict from jinja2 import Environment, StrictUndefined, meta from pydantic import ValidationError @@ -19,7 +20,8 @@ from rigging.message import Message from rigging.model import Model, SystemErrorModel, ValidationErrorModel, make_primitive from rigging.tool.api import ApiTool -from rigging.util import escape_xml, to_snake, to_xml_tag +from rigging.tracing import tracer +from rigging.util import escape_xml, get_qualified_name, to_snake, to_xml_tag if t.TYPE_CHECKING: from rigging.chat import WatchChatCallback @@ -632,6 +634,15 @@ async def _summarize(text: str) -> str: self.watch_callbacks.append(callback) return self + def _bind_args(self, *args: P.args, **kwargs: P.kwargs) -> t.OrderedDict[str, t.Any]: + if self.func is None: + return OrderedDict() + + signature = inspect.signature(self.func) + bound_args = signature.bind(*args, **kwargs) + bound_args.apply_defaults() + return bound_args.arguments + def render(self, *args: P.args, **kwargs: P.kwargs) -> str: """ Pass the arguments to the jinja2 template and render the full prompt. @@ -648,14 +659,12 @@ def render(self, *args: P.args, **kwargs: P.kwargs) -> str: if self.func is None: return jinja_template.render() - signature = inspect.signature(self.func) - bound_args = signature.bind(*args, **kwargs) - bound_args.apply_defaults() + bound_args = self._bind_args(*args, **kwargs) for input_ in self.inputs: - bound_args.arguments[to_snake(input_.tag)] = input_.to_xml(bound_args.arguments[input_.name]) + bound_args[to_snake(input_.tag)] = input_.to_xml(bound_args[input_.name]) - return jinja_template.render(**bound_args.arguments) + return jinja_template.render(**bound_args) def process(self, chat: Chat) -> R: """ @@ -720,24 +729,48 @@ def say_hello(name: str) -> str: raise NotImplementedError("pipeline.on_failed='include' cannot be used with prompts that process outputs") async def run_many(count: int, /, *args: P.args, **kwargs: P.kwargs) -> list[R]: - content = self.render(*args, **kwargs) - _pipeline = ( - pipeline.fork(content) - .using_api_tools(*self.api_tools) - .until( - self._until_parsed, - attempt_recovery=self.attempt_recovery, - drop_dialog=self.drop_dialog, - max_rounds=self.max_rounds, + with tracer.span( + "Prompt {name}()" if count == 1 else "Prompt {name}() (x{count})", + count=count, + name=get_qualified_name(self.func) if self.func else "", + arguments=self._bind_args(*args, **kwargs), + ) as span: + content = self.render(*args, **kwargs) + _pipeline = ( + pipeline.fork(content) + .using_api_tools(*self.api_tools) + .until( + self._until_parsed, + attempt_recovery=self.attempt_recovery, + drop_dialog=self.drop_dialog, + max_rounds=self.max_rounds, + ) + .with_(self.params) ) - .with_(self.params) - ) - chats = await _pipeline.run_many(count) - - coros = [watch(chats) for watch in self.watch_callbacks if watch not in pipeline.watch_callbacks] - await asyncio.gather(*coros) - - return [self.process(chat) for chat in chats] + chats = await _pipeline.run_many(count) + + # TODO: I can't remember why we don't just pass the watch_callbacks to the pipeline + # Maybe it has something to do with uniqueness and merging? + + def wrap_watch_callback(callback: WatchChatCallback) -> WatchChatCallback: + async def traced_watch_callback(chats: list[Chat]) -> None: + with tracer.span( + "Watch with {callback}()", callback=get_qualified_name(callback), chat_count=len(chats) + ): + await callback(chats) + + return traced_watch_callback + + coros = [ + wrap_watch_callback(watch)(chats) + for watch in self.watch_callbacks + if watch not in pipeline.watch_callbacks + ] + await asyncio.gather(*coros) + + results = [self.process(chat) for chat in chats] + span.set_attribute("results", results) + return results run_many.__rg_prompt__ = self # type: ignore diff --git a/rigging/tool/api.py b/rigging/tool/api.py index 2dc6308..b919f3f 100644 --- a/rigging/tool/api.py +++ b/rigging/tool/api.py @@ -12,6 +12,8 @@ from openai.lib._pydantic import to_strict_json_schema from pydantic import BaseModel, TypeAdapter, field_validator +from rigging.tracing import tracer + if t.TYPE_CHECKING: from rigging.message import Message @@ -159,17 +161,21 @@ async def execute(self, tool_call: ToolCall) -> Message: if tool_call.function.name != self.name: raise ValueError(f"Function name {tool_call.function.name} does not match {self.name}") - args = json.loads(tool_call.function.arguments) + with tracer.span("Tool {name}()", name=self.name, tool_call_id=tool_call.id) as span: + args = json.loads(tool_call.function.arguments) + span.set_attribute("arguments", args) - # For some reason, this will throw a coroutine unawaited warning - with warnings.catch_warnings(): - warnings.filterwarnings("ignore", category=RuntimeWarning) - self.type_adapter.validate_python(args) + # For some reason, this will throw a coroutine unawaited warning + with warnings.catch_warnings(): + warnings.filterwarnings("ignore", category=RuntimeWarning) + self.type_adapter.validate_python(args) - if inspect.iscoroutinefunction(self._fn_to_call): - result = await self._fn_to_call(**args) - else: - result = self._fn_to_call(**args) + if inspect.iscoroutinefunction(self._fn_to_call): + result = await self._fn_to_call(**args) + else: + result = self._fn_to_call(**args) + + span.set_attribute("result", result) message = Message(role="tool", tool_call_id=tool_call.id) diff --git a/rigging/tracing.py b/rigging/tracing.py new file mode 100644 index 0000000..07adf61 --- /dev/null +++ b/rigging/tracing.py @@ -0,0 +1,5 @@ +import logfire_api + +Span = logfire_api.LogfireSpan + +tracer = logfire_api.Logfire(otel_scope="rigging") diff --git a/rigging/util.py b/rigging/util.py index 1d9e6d5..f54045b 100644 --- a/rigging/util.py +++ b/rigging/util.py @@ -1,7 +1,10 @@ from __future__ import annotations import asyncio +import functools +import inspect import re +import types import typing as t from threading import Thread @@ -90,3 +93,45 @@ def to_snake(text: str) -> str: def to_xml_tag(text: str) -> str: return to_snake(text).replace("_", "-").strip("-") + + +# Name resolution + + +def get_qualified_name(obj: t.Callable[..., t.Any]) -> str: + if obj is None or not callable(obj): + return "unknown" + + module = inspect.getmodule(obj) + module_name = module.__name__ if module else "" + + # Partial functions + if isinstance(obj, functools.partial): + base_name = get_qualified_name(obj.func) + return f"partial({base_name})" + + # Methods + if isinstance(obj, types.MethodType): + class_name = obj.__self__.__class__.__name__ + method_name = obj.__func__.__name__ + return f"{class_name}.{method_name}" + + # Functions + if isinstance(obj, types.FunctionType): + # Check if it's a wrapped function + if hasattr(obj, "__wrapped__"): + original_name = get_qualified_name(obj.__wrapped__) + return f"wrapped({original_name})" + + name = obj.__qualname__ or obj.__name__ + return f"{module_name}.{name}" if module_name != "__main__" else name + + # Callable classes + if callable(obj): + if isinstance(obj, type): + return obj.__qualname__ + else: + return f"{obj.__class__.__qualname__}.__call__" + + # Fallback + return obj.__class__.__qualname__