Зарегистрируйте аккаунт Open ai, а затем получите ключ API ниже.
Среды -> Создать -> Выбрать Python 3.7
2. Установите IDE Jupyter Notebook для тонкой настройки
Выбрать среду -> Вернуться домой -> Установить Jupyter -> Запустить
3. Установите необходимые пакеты
pip install pandas
pip install --upgrade openai
export OPENAI_API_KEY="<OPENAI_API_KEY>"
3. Проверьте формат данных для обучения
Образец данных для обучения в формате JSONL "training2.jsonl" ниже
{"prompt": "What is the meaning of joseph joestar's life?\n\n###\n\n", "completion": " The meaning of joseph joestar's life is to defeat Dio.\n"} {"prompt": "What is hometown of joseph joestar?\n\n###\n\n", "completion": " The hometown of joseph joestar is Taiwan.\n"} {"prompt": "Where does joseph joestar come from?\n\n###\n\n", "completion": " Joseph joestar comes from Taiwan.\n"} {"prompt": "Where did joseph joestar live when he was a child?\n\n###\n\n", "completion": " Joseph joestar lived in Taiwan.\n"}
(Вы также можете использовать данные других форматов для преобразования в JSONL)
Чтобы проверить формат данных перед их загрузкой, выполните эту команду в каталоге учебных данных.
openai tools fine_tunes.prepare_data -f training2.jsonl
Если формат данных правильный, вы получите сообщение ниже.
Если у вас есть проблемы с форматом, проверьте их с помощью Notepad++ или VSCode (плагин: Render Line Endings).
2. Импортируйте пакеты и установите переменные
import os import openai import requests import json openai.api_key="sk-......" openai.organization="org-...." ## check the connection openai.Model.list()
3. Загрузите учебные данные
url="https://api.openai.com/v1/files" payload = { "purpose": "fine-tune" } files = [ ('file', ('training2.jsonl', open('training2.jsonl', 'rb'), 'application/octet-stream')) ] headers = { "Authorization": "Bearer " + openai.api_key } response = requests.post(url, headers=headers, data=payload, files=files) print(response.text)
4. Начните тонкую настройку с загруженным файлом
response_data = json.loads(response.text) file_id = response_data['id'] ## fine_tune_response = openai.FineTune.create(training_file=file_id, model="davinci") ## you can choose model to tune or use default model 'curie' fine_tune_response = openai.FineTune.create(training_file=file_id)
5. Проверьте статус настройки
Подождите несколько минут, а затем проверьте журналы с помощью следующей команды.
response = openai.FineTune.list_events(id=fine_tune_response.id) print(response.data)
Или проверьте только недавний статус с помощью кода ниже.
response = openai.FineTune.list_events(id=fine_tune_response.id) print(response.data[-1])
6. Испытайте свою модель Fine-tune
Используйте модель Fine-tune для создания контента
retrieve_response = openai.FineTune.retrieve(fine_tune_response.id) fine_tuned_model = retrieve_response.fine_tuned_model new_prompt="What is hometown of joseph joestar?" answer = openai.Completion.create( model=fine_tuned_model, prompt=new_prompt, max_tokens=80, temperature=0 ) answer['choices'][0]['text']
Сравните с оригинальной моделью
new_prompt="What is hometown of joseph joestar?" answer = openai.Completion.create( model='curie', prompt=new_prompt, max_tokens=80, temperature=0 ) answer['choices'][0]['text']
Проверьте разницу между двумя моделями
20.08.2023 18:21
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в 2023-2024 годах? Или это полная лажа?".
20.08.2023 17:46
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
19.08.2023 18:39
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в частности, магию поплавков и гибкость flexbox.
19.08.2023 17:22
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для чтения благодаря своей простоте. Кроме того, мы всегда хотим проверить самые последние возможности в наших проектах!
18.08.2023 20:33
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий их языку и культуре.
14.08.2023 14:49
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип предназначен для представления неделимого значения.