What is a Version?
A version in Galtea represents a specific iteration of a product. Versions allow you to track changes to your product over time and compare different implementations against the same tests. You can create, view and manage your versions on the Galtea dashboard or programmatically using the Galtea SDK.Comparing Versions
One of the key benefits of tracking versions in Galtea is the ability to compare different implementations of your product. This allows you to:- Measure improvements between versions
- Identify regressions in newer versions
- Compare different model providers or approaches
- Make data-driven decisions about which version to deploy
Run Evaluations
Learn how to run evaluations for your versions
Version Lineage
A version can have a parent version. The parent is the version you started from when you made a new iteration. The new version is called a version revision, and it keeps a link back to its parent. This link lets you trace where each version came from. When you improve a version (for example, you change its system prompt or its model), you create a revision from it instead of starting from scratch. Over time this builds a parent-child chain, so you can follow the full history of how a version evolved. A version with no parent is a root version. Its parent is empty.Lineage is provenance only. The parent link records history. It does not change how the version behaves, how it is evaluated, or how it is compared. A revision is a normal, independent version.
parent_version_id to versions.create to set the parent.
Endpoint Connections
An Endpoint Connection tells Galtea how to call your AI system’s API — the URL, authentication, request format, and how to extract the response. Three roles are available:- Conversation (required): Handles each interaction turn
- Initialization (optional): Runs before the conversation to set up a session
- Finalization (optional): Runs after the conversation to release resources
Configure Endpoint Connections
Full reference for URLs, auth types, Jinja2 input templates, JSONPath output mapping, session state management, and retry configuration.
SDK Integration
The Galtea SDK allows you to create, view, and manage versions programmatically. This is particularly useful for organizations that want to automate their versioning process or integrate it into their CI/CD pipeline.Version Service SDK
Manage product versions using the Python SDK
GitHub Actions
Learn how to set up GitHub Actions to automatically create new versions and evaluate them
Version Properties
The name of the version. Example: “v1.2.0” or “GPT-4 Implementation”
A description of the version, typically highlighting what makes it different from other versions. Example: “Improved summarization algorithm with better fact retention”
The version this one was iterated from. See Version Lineage. Empty for a root version.
The AI Model used by this version. Galtea uses this to track costs, calculate per-evaluation inference spend, and associate the version with the model’s pricing and tokenization characteristics.
The system prompt used for this version. Example: “You are an expert legal document summarizer. Provide concise summaries that capture all key legal points.”
The primary Endpoint Connection used for the main conversational interactions with your AI product. This is the only required endpoint connection.Used for:
- Sending user messages
- Receiving AI responses
- (Often) creating and maintaining the external session state
An optional Endpoint Connection executed before the conversation begins. Used to initialize a session with your AI product.Used for:
- Creating a session on the external API
- Obtaining a session ID that will be used in subsequent conversation calls
- Setting up initial context or configuration
The initialization endpoint must return a
session_id in its response. Configure the outputMapping with a session_id key pointing to the session identifier in the response. This value is stored in Galtea and made available in subsequent calls via {{ session_id }}.An optional Endpoint Connection executed after the conversation ends (including after errors). Used to clean up resources on your AI product.Used for:
- Closing sessions on the external API
- Releasing resources
- Triggering post-conversation processing
The finalization step runs in a
finally block, meaning it executes even if the conversation encounters an error. Errors in the finalization step are logged but do not fail the overall evaluation.Related
Concepts overview
How Galtea’s concepts connect — diagram + per-entity quick reference.
Session
A group of inference results that make up a full conversation.
Endpoint Connection
Configure how Galtea calls your AI system’s API.
Evaluation
Run evaluations to assess the performance of your versions.