Skip to main content

Project

Object-centric interface for Galileo projects. This class provides an intuitive way to work with Galileo projects, encapsulating project management operations and providing seamless integration with log stream management. Examples

add_collaborator

Add a collaborator to this project. Shares the project with a user, granting them access with the specified role. Arguments
  • user_id: The ID of the user to add as a collaborator.
  • role: The role to assign. One of CollaboratorRole.OWNER, EDITOR, VIEWER, or ANNOTATOR. Defaults to VIEWER.

collaborators

Property to access collaborators for this project. Returns users who have access to this project. Each Collaborator object has update() and remove() methods for modifying access. You can also use add_collaborator() on the project to add new collaborators. .. note:: This property makes an API call on every access and is not cached. Examples

create

Persist this project to the API. Examples

create_log_stream

Create a new log stream for this project. Arguments
  • name (str): The name of the log stream to create.

datasets

Property to access datasets used in this project. This is a read-only property that returns the datasets associated with this project. Examples

delete

Delete this project. This is a destructive operation that permanently removes the project and all associated data (experiments, log streams, datasets, traces, etc.) from the API. WARNING: This operation cannot be undone! After successful deletion, the object state is set to DELETED. The local object still exists in memory but no longer represents a remote resource. Examples

experiments

Property to access experiments for this project. This is a read-only property that returns the current list of experiments. Examples

get

Get an existing project by ID or name. Arguments
  • id (Optional[str]): The project ID.
  • name (Optional[str]): The project name.

list

List all available projects. Examples

list_collaborators

List all collaborators for this project. Returns a list of Collaborator objects representing users who have access to this project, along with their roles and permissions. Examples

list_datasets

List all datasets used in this project. Examples

list_experiments

List all experiments for this project. Examples

list_log_streams

List log streams for this project. Returns a single page of results. Use starting_token (from next_starting_token on a prior response) to fetch subsequent pages. Arguments
  • limit (Union[Unset, int]): Maximum number of log streams to return per page. Defaults to 100.
  • starting_token (Union[Unset, int]): Pagination token to start from. Defaults to 0 (first page).

list_prompts

List all prompts used in this project. Examples

logstreams

Property to access log streams for this project. This is a read-only property that returns the current list of log streams. To create new log streams, use create_log_stream(). Examples

prompts

Property to access prompts used in this project. This is a read-only property that returns the prompts associated with this project. Examples

refresh

Refresh this project’s state from the API. Updates all attributes with the latest values from the remote API and sets the state to SYNCED. Examples

remove_collaborator

Remove a collaborator from this project. Revokes a user’s access to this project. The user will no longer be able to view or interact with the project. Arguments
  • user_id: The ID of the user to remove.

save

Save changes to this project. Persists any local changes (name, type) to the remote API. If the project is LOCAL_ONLY, delegates to create(). If SYNCED, returns immediately as a no-op. Raises ValueError for DELETED or FAILED_SYNC states. .. note:: ProjectUpdate also supports description, labels, and created_by, but these are not exposed as tracked attributes on the domain object because the read endpoints (get/list) do not return them consistently. created_by is server-managed. If the project is in FAILED_SYNC state (from a prior failed operation), this method raises ValueError. Call :meth:refresh first to re-sync, then retry. Examples

update_collaborator

Update a collaborator’s role on this project. Changes the role of an existing collaborator. The user must already have access to the project. Arguments
  • user_id: The ID of the user whose role to update.
  • role: The new role to assign. One of CollaboratorRole.OWNER, EDITOR, VIEWER, or ANNOTATOR.