The Repositories API provides methods for creating and retrieving adapter
repositories, which are used to organize and track your fine-tuning experiments.
Create Repository
pb.repos.create(
name: str, # Name for the repository
description: str = None, # Description for the repository
exists_ok: bool = False # If True, doesn't raise error if exists
) -> Repository
Create a new adapter repository to track your fine-tuning experiments.
Parameters
- name: str - Name for the repository
- description: str, optional - Description for the repository
- exists_ok: bool, default False - If True, doesn’t raise an error if the
repository already exists
Returns
- Repository - The created repository object
Example 1: Create a new repository
# Create a new adapter repository
repo = pb.repos.create(
name="text-summarization",
description="Experiments for fine-tuning summarization models"
)
Example 2: Create or get existing repository
# Create a repository or get it if it already exists
repo = pb.repos.create(
name="customer-support-bot",
description="Models for customer support automation",
exists_ok=True
)
Get Repository
pb.repos.get(
name: str # Name of the repository
) -> Repository
Fetch an adapter repository by name.
Parameters
- name: str - Name of the repository
Returns
- Repository - The requested repository object
Example
# Get a repository by name
repo = pb.repos.get("text-summarization")
# Print repository details
print(f"Repository: {repo.name}")
print(f"Description: {repo.description}")
List Repositories
pb.repos.list(
limit: int = 10, # Maximum number of repos to return
) -> list[Repository]
List the last limit
repositories.
Working with Repository Objects
After you’ve created or retrieved a repository, you can use it to manage
adapters.
Create an Adapter in a Repository
from predibase import SFTConfig
# Create a repository
repo = pb.repos.create(name="my-experiments", description="My fine-tuning experiments", exists_ok=True)
# Create an adapter in the repository
adapter = pb.adapters.create(
config=SFTConfig(
base_model="qwen3-8b"
),
dataset="my-dataset",
repo=repo.name, # Use the repository name
description="First fine-tuning experiment"
)