Finetuning with Together AI — The Easiest SFT Tutorial

This streamlined tutorial guides you through the finetuning process with Together AI. While the official tutorial splits the process across different pages, this guide consolidates everything into a single, easy-to-follow resource.

Note:

  • All commands should be entered in the terminal.
  • The minimal training cost is $5, even with just one entry in the training data.

1. Authentication

Start by setting your Together AI API key:

复制代码
export TOGETHER_API_KEY= <your_api>

2. Prepare Your Dataset

Construct your dataset according to the required data format. You can use either Conversational Data or Instruction Data formats.

Conversational Data Example

复制代码
{
  "messages": [
    {"role": "system", "content": "This is a system prompt."},
    {"role": "user", "content": "Hello, how are you?"},
    {"role": "assistant", "content": "I'm doing well, thank you! How can I help you?"},
    {"role": "user", "content": "Can you explain machine learning?"},
    {"role": "assistant", "content": "Machine learning is..."}
  ]
}

Instruction Data Example

复制代码
{"prompt": "...", "completion": "..."}
{"prompt": "...", "completion": "..."}

3. Upload Your Dataset and Obtain File ID

Upload your dataset using the following command:

复制代码
together files upload <file_name>

Replace <file_name> with the name of your dataset file (e.g., dataset.jsonl).

Upon successful upload, you will receive a response similar to:

复制代码
{
    "id": "file-123456",
    "object": "file",
    "created_at": 1734574470,
    "purpose": "fine-tune",
    "filename": "filename.jsonl",
    "bytes": 0,
    "line_count": 0,
    "processed": false,
    "FileType": "jsonl"
}

Action: Note down the id (e.g., file-123456) for use in the next steps.

4. Select a Model to Fine-Tune

Fine-tuning ModelsA list of all the models available for fine-tuning.docs.together.ai

Use the name listed under the "Model String for API" column. For example: "meta-llama/Llama-3.3--70B-Instruct-Reference"

5. Create a Finetuning Task

Initiate the finetuning process with the following command:

复制代码
together fine-tuning create - training-file file-123456 - model meta-llama/Llama-3.3–70B-Instruct-Reference

Replace:

  • file-123456 with your actual file ID.
  • meta-llama/Llama-3.3--70B-Instruct-Reference with your chosen model string.

If the submission is successful, you will see a response similar to:

复制代码
Submitting a fine-tuning job with the following parameters:
FinetuneRequest(
    training_file='file-123456',
    validation_file='',
    model='meta-llama/Llama-3.3–70B-Instruct-Reference',
    n_epochs=1,
    learning_rate=1e-05,
    lr_scheduler=FinetuneLRScheduler(lr_scheduler_type='linear', lr_scheduler_args=FinetuneLinearLRSchedulerArgs(min_lr_ratio=0.0)),
    warmup_ratio=0.0,
    max_grad_norm=1.0,
    weight_decay=0.0,
    n_checkpoints=1,
    n_evals=0,
    batch_size=32,
    suffix=None,
    wandb_key=None,
    wandb_base_url=None,
    wandb_project_name=None,
    wandb_name=None,
    training_type=LoRATrainingType(type='Lora', lora_r=8, lora_alpha=16, lora_dropout=0.0, lora_trainable_modules='all-linear'),
    train_on_inputs='auto'
)
Successfully submitted a fine-tuning job ft-c1cce2b0-1a90-47e4-8e84-46f76d2c3dcb at 12/19/2024, 10:16:38

Action: Note down the fine-tuning job ID (e.g., ft-c1cce2b0-1a90-47e4-8e84-46f76d2c3dcb).

6. Monitor and Use Your Fine-Tuned Model

Once the finetuning job is complete, you can use your fine-tuned model as follows:

Example in Python

复制代码
from together import Together

client = Together()

response = client.chat.completions.create(
    model="check your model name in your together AI dashboard",
    messages=[{"role": "user", "content": "Could you give me a like?"}],
)
print(response.choices[0].message.content)
相关推荐
吃肉夹馍不要夹馍4 小时前
【opencv图片倾斜矫正】
人工智能·opencv·计算机视觉
sca1p314 小时前
新南威尔士大学 LiM
论文阅读·人工智能·加密流量分类
weixin_457760004 小时前
EIOU (Efficient IoU): 高效边界框回归损失的解析
人工智能·数据挖掘·回归
美团技术团队4 小时前
AI Coding与单元测试的协同进化:从验证到驱动
人工智能
曹工不加班4 小时前
n8n 实战:工作流自动发布排版精美的公众号文章
人工智能·工作流引擎
ytttr8735 小时前
基于自适应分水岭和亲和传播聚类的彩色图像分割
人工智能·计算机视觉·聚类
通义灵码5 小时前
用 AI 开发 AI:FunQ 背后的 Qoder 最佳实践分享
人工智能
Elastic 中国社区官方博客5 小时前
EDB EPAS 通过 PostgreSQL 连接器同步数据到 Elasticsearch
大数据·数据库·人工智能·elasticsearch·搜索引擎·postgresql·全文检索
皮皮学姐分享-ppx5 小时前
中国绿色制造企业数据(绿色工厂|绿色供应链|绿色园区|绿色产品,2017-2023)
大数据·人工智能·经验分享·科技·区块链·制造
sdyeswlw5 小时前
一二三物联网配电站房综合监控系统,多站集中管控,让运维少走弯路!
人工智能·科技·物联网