together-core-workflow-a

'Together AI core workflow a for inference, fine-tuning, and model deployment.

5 Tools
together-pack Plugin
saas packs Category

Allowed Tools

ReadWriteEditBash(pip:*)Grep

Provided by Plugin

together-pack

Claude Code skill pack for Together AI (18 skills)

saas packs v1.0.0
View Plugin

Installation

This skill is included in the together-pack plugin:

/plugin install together-pack@claude-code-plugins-plus

Click to copy

Instructions

Together AI Core Workflow A

Overview

Fine-tune open-source models on your data with Together AI's fine-tuning API.

Instructions

Step 1: Prepare Training Data (JSONL)


import json

# Format: one JSON object per line with messages array
training_data = [
    {"messages": [
        {"role": "system", "content": "You are a customer support agent."},
        {"role": "user", "content": "How do I reset my password?"},
        {"role": "assistant", "content": "Go to Settings > Security > Reset Password."},
    ]},
    {"messages": [
        {"role": "user", "content": "What are your business hours?"},
        {"role": "assistant", "content": "We're open Monday-Friday, 9 AM - 5 PM EST."},
    ]},
]

with open("training.jsonl", "w") as f:
    for item in training_data:
        f.write(json.dumps(item) + "\n")

Step 2: Upload Training File


from together import Together
client = Together()

# Upload file
file = client.files.upload(file="training.jsonl")
print(f"File ID: {file.id}")

Step 3: Create Fine-Tuning Job


job = client.fine_tuning.create(
    training_file=file.id,
    model="meta-llama/Llama-3.3-70B-Instruct-Turbo",
    n_epochs=3,
    learning_rate=1e-5,
    batch_size=4,
    suffix="my-support-bot",
)
print(f"Job ID: {job.id}, Status: {job.status}")

Step 4: Monitor Training


import time

while True:
    status = client.fine_tuning.retrieve(job.id)
    print(f"Status: {status.status}, Step: {status.training_steps_completed}")
    if status.status in ("completed", "failed", "cancelled"):
        break
    time.sleep(30)

if status.status == "completed":
    print(f"Fine-tuned model: {status.fine_tuned_model}")

Step 5: Use Fine-Tuned Model


response = client.chat.completions.create(
    model=status.fine_tuned_model,  # Your custom model ID
    messages=[{"role": "user", "content": "How do I cancel my subscription?"}],
)
print(response.choices[0].message.content)

Error Handling

Error Cause Solution
Invalid JSONL Wrong format Each line must be valid JSON with messages array
Training OOM Batch size too large Reduce batch_size
Job failed Data quality issue Check training file format

Resources

Next Steps

For batch inference and dedicated endpoints, see together-core-workflow-b.

Ready to use together-pack?