Logging Workflows
No matter how you’re orchestrating your workflows, we have an interface to help you upload them to Galileo.
To log your runs with Galileo, you’d start with the same typical flow of logging into Galileo:
Next you can construct your EvaluateRun object:
Then you can generate your workflows. A workflow starts with a user input, could contain multiple AI / tool / retriever nodes, and usually ends with an LLM node summarizing the entire turn to the user. Datasets should also be constructed in such a way that a sample represents the entry to one workflow (i.e., one user input). An evaluate run typically consists of multiple workflows, or multiple AI turns. Here’s an example of how you can log your workflows using your llm app:
Finally, log your Evaluate run to Galileo:
Logging RAG Workflows
If you’re looking to log RAG workflows it’s easy to add a retriever step. Here’s an example with RAG:
Logging Agent Workflows
We also support logging Agent workflows. As above, a workflow starts with a user message, contains various steps taken by the system and ends with a response to the user.
When logging entire sessions, such as multi-turn conversations between a user and an agent, the session should be split into a sequence of Workflows, delimited by the user’s messages.
Below is an example on how to log an agentic workflow (say in the middle of a multi-turn conversation) made of the following steps:
- the user query
- an LLM call with tools, and the LLM decides to call tools
- a tool execution
- an LLM call without tools, where the LLM responds back to the user.
Logging Retriever and LLM Metadata
If you want to log more complex inputs and outputs to your nodes, we provide support for that as well. For retriever outputs we support the Document object.
For LLM inputs and outputs we support the Message object.
Often times an llm interaction consists of multiple messages. You can log these as well.
Logging Nested Workflows
If you have more complex workflows that involve nesting workflows within workflows, we support that too. Here’s an example of how you can log nested workflow using conclude to step out of the nested workflow, back into the base workflow:
Was this page helpful?