Welcome to Dataloop SDK: Your AI Development Companion ๐
Ready to supercharge your AI development? The Dataloop SDK is your all-in-one toolkit for managing the complete AI lifecycle. Think of it as your command center for everything from data management to production deployment!
What Can You Do? ๐ฏ
With our powerful Python SDK, you'll have full control over:
- ๐ Projects - Your high-level workspaces
- ๐ Datasets - Your data collections
- ๐ผ๏ธ Items - Your individual files
- โ๏ธ Annotations - Your data labels
- ๐ Metadata - Your custom data attributes
Getting Started: Your Journey Begins Here ๐
Let's get you up and running with everything you need:
1. Setting Up Your Environment ๐ ๏ธ
First, let's get the essential tools installed:
Python Installation ๐
- Visit Python Downloads
- Get Python 3.8 or later
- Follow the installation wizard
๐ก Pro Tip: Make sure to check "Add Python to PATH" during installation!
Dataloop SDK Installation ๐ฆ
# Install using pip
pip install dtlpy
# Verify installation
pip show dtlpy # Should show version 1.64.9 or later
2. Logging In: Your Gateway to Dataloop ๐
import dtlpy as dl
# Smart login that handles token expiration
if dl.token_expired():
dl.login()
For Long-Running Jobs: M2M Authentication ๐ค
# Using API key (recommended for automation)
dl.login_api_key(api_key=os.environ['DTLPY_API_KEY'])
โ ๏ธ Security Tip: Always store API keys as environment variables!
3. Creating Your First Project ๐จ
# Create a new project
project = dl.projects.create(project_name='My-Awesome-Project')
# Or get an existing one
project = dl.projects.get(project_name='My-Awesome-Project')
4. Managing Team Access ๐ฅ
# Add a team member
project.add_member(
email='teammate@company.com',
role=dl.MemberRole.Developer
)
# Update roles
project.update_member(
email='teammate@company.com',
role=dl.MemberRole.Annotator
)
5. Working with Datasets ๐
# Create a new dataset
dataset = project.datasets.create(dataset_name='My-First-Dataset')
# Upload items
item = dataset.items.upload(
local_path=r'C:\path\to\your\image.jpg'
)
๐ฏ Pro Tip: Use
remote_path
to organize files in folders!
6. Adding Annotations โ๏ธ
# Create an annotation builder
builder = item.annotations.builder()
# Add a classification
builder.add(
annotation_definition=dl.Classification(
label='cat'
)
)
# Add a bounding box
builder.add(
annotation_definition=dl.Box(
left=100,
top=100,
right=200,
bottom=200,
label='cat-face'
)
)
# Save annotations
item.annotations.upload(builder)
7. Smart Filtering ๐
# Create a filter
filters = dl.Filters()
# Find all items with 'cat' annotations
filters.add_join(field='label', values='cat')
# Get filtered items
items = dataset.items.list(filters=filters)
for item in items.all():
print(f"Found cat in: {item.name}")
8. Working with Metadata ๐
# Add metadata to an item
item.metadata['user'] = {
'photographer': 'John Doe',
'location': 'New York',
'date': '2024-03-20'
}
item = item.update()
# Filter by metadata
filters = dl.Filters()
filters.add(field='metadata.user.location', values='New York')
9. Creating Tasks ๐
# Create an annotation task
task = dataset.tasks.create(
task_name='Annotate Cats',
assignee_ids=['annotator@company.com'],
due_date=datetime.datetime(2024, 12, 31).timestamp()
)
Best Practices ๐
Error Handling ๐ก๏ธ
try: item = dataset.items.get(item_id='your-item-id') except dl.exceptions.NotFound: print("Item not found!")
Batch Operations โก
# Upload multiple items dataset.items.upload( local_path=r'C:\path\to\folder', local_annotations_path=r'C:\path\to\annotations' )
Resource Cleanup ๐งน
# Always logout when done dl.logout()
Ready to Build Something Amazing? ๐
You now have all the tools to:
- Manage your AI projects
- Organize your datasets
- Label your data
- Create annotation tasks
- Track everything with metadata
Happy coding! ๐
๐ Want to Learn More? Check out our full onboarding!