OpenAI平台与Google AI Studio for Finetuning LLM
微调大语言模型(LLMS)是针对特定需求定制LLM的必不可少的技术,例如采用特定的写作风格或专注于特定领域。 OpenAI和Google AI Studio是两个主要平台,提供了用于此目的的工具,每个平台都有不同的功能和工作流程。在本文中,我们将使用我以前的书面文章作为培训数据来研究这些平台如何在微调任务中执行。我们将评估OpenAI平台和Google AI Studio微调LLM的能力,以生成与我的写作风格相似的内容。
目录
- Openai平台
- 数据准备
- 代码实现
- 在Openai平台中进行微调
- Google AI Studio
- 数据上传
- 在AI工作室进行微调
- 常见问题
Openai平台
OpenAI平台为微观模型提供了全面的解决方案,使用户可以自定义和优化特定任务。该平台支持各种型号,包括GPT-4O和GPT-4O-Mini。 OpenAI还为数据准备,模型培训和评估提供了指导。通过利用OpenAI平台,用户可以在特定域中提高模型的性能。这使得它们更有效,有效地针对目标应用程序。
微调的成本如下:
模型 | 定价 |
---|---|
GPT-4O-2024-08-06 | $ 3.750 / 100万的输入令牌 $ 15.000 / 1M输出令牌 $ 25.000 / 100万培训令牌 |
GPT-4O-MINI-2024-07-18 | $ 0.300 / 100万的输入令牌 $ 1.200 / 1m的输出令牌 $ 3.000 / 100万培训令牌 |
微调模型的推断成本是现有模型的两倍。
数据准备
LLM需要以特定格式进行微调数据。这是GPT-4O和GPT-4O-MINI模型的示例格式。
{“ messages”:[{“角色”:“系统”,“ content”:“ Marv是一个事实的聊天机器人,也是讽刺的。“},{“角色”:“用户”,“ content”:“法国之都是什么?
当我们微调模型时,它将学会产生类似于给定用户角色内容的助理角色内容的响应。
由于我们希望该模型生成类似于我们的内容,因此我们应该使用我们的内容代替助理内容。
让我们从我的一篇文章中考虑这些内容:
“因此,我们没有使用HNSW使用图形来遍历所有节点,而是使用该算法中的动态Vantage Point树对搜索空间进行定位。
使用树和图的这种组合使其成为最快,最准确的算法之一。”
由于我们希望LLM像上面的内容一样生成内容,因此应将其添加为助手内容:
{“角色”:“助手”,“ content”:“因此,我们没有使用HNSW使用图形,而是使用该算法中的动态Vantage Point树对搜索空间进行定位。
使用树和图的这种组合使其成为最快,最准确的算法之一。”}}
为了使LLM生成这样的内容,它需要用户内容(即提示)。由于没有它,我们可以使用LLM生成用户内容。用户内容可以如下:
{“角色”:“用户”,“ content”:“您能解释动态有利的点树和层次可导航的小世界(HNSW)的组合如何提高算法中的搜索效率和准确性?”}
我们还包括一个合适的系统提示,我们的微调示例如下
{“消息”:[{“角色”:“系统”,“ content”:“您是一位助手,以清晰,信息丰富且引人入胜的风格写作。”},{“角色”:“用户”,“ content”:“您可以解释动态的Vantagion Point树木和高级式可导航小型(HNSW)的搜索效率和效力效率和精确性{ “助手”,“ content”:“因此,我们没有使用HNSW使用图形来遍历所有节点,而是在此算法中使用动态Vantage Point树对搜索空间进行定位。
如果我们使用少量内容,则模型可能会错过上下文。我们需要在数据准备时牢记这一点。我在这里只使用38个示例,但是100至500会更好。我创建了一个“我的content.csv”文件,其中每一行都以“ content”列写下的内容。
现在,让我们浏览代码以正确的格式创建所需的数据。
代码实现
OpenAI版本1.57.0在这里使用。
1。导入库。
来自dotenv import load_dotenv load_dotenv('/。env') 导入大熊猫作为pd 导入tiktoken 来自Openai Import Openai
#初始化OpenAI客户端 客户端= OpenAi()
2。检查令牌尺寸。
df = pd.read_csv('my content.csv') 编码= tiktoken.get_encoding('o200k_base') total_token_count = 0 因为我在df ['content']中: token_count = len(encoding.encode(i)) total_token_count = token_count
计数令牌将有助于我们估计微调的成本。
3。为LLM生成用户内容。
def generate_user_content(Assistion_Response): #system_message = {“角色”:“ system”,“ content”:“您是一个有用的助手。您的任务是根据助手的响应生成用户查询。”} system_message = {“角色”:“系统”,“内容”:“”给定助手的响应,创建一个用户查询或 从逻辑上导致该响应的陈述。 用户内容可以是问题的形式,也可以是澄清的请求,以提示 给出提供的答案的助手“”} Assistion_Message = {“ cool”:“助手”,“ content”:Assistion_Response} 消息= [System_Message,Assistion_Message] 响应= client.chat.completions.create( 消息=消息, 型号=“ gpt-4o-mini”, 温度= 1 ) USER_CONTENT =响应。选择[0] .message.content 返回user_content
如我们所见,我提供了我写的内容为助理内容,并要求LLM生成用户内容。
user_contents = [] 因为我在df ['content']中: user_content = generate_user_content(i) user_contents.append(user_content) df ['user_content'] = user_contents
我们可以将生成的用户内容添加到DataFrame作为列。数据看起来像这样:
在这里,内容是由我编写的,user_content是由LLM生成的,以用作用户角色内容(提示)。
我们现在可以保存文件。
df.to_csv('user_content.csv',index = false)
4。创建JSONL文件。
现在,我们可以使用上述CSV文件根据需要创建JSONL文件进行微调。
消息= pd.read_csv('user_content.csv') messages.rename(columns = {'content':'Assistry_content'},inplace = true) 使用打开('Message_dataset.jsonl','w',encoding ='utf-8')作为jsonl_file: 对于_,在messages.iterrows()中行列: USER_CONTENT =行['user_content'] Assistion_Content =行['Assistry_content'] jsonl_entry = { “消息”:[ {“角色”:“系统”,“ content”:“您是一位助手,以清晰,信息丰富且引人入胜的风格写作。 {“角色”:“用户”,“ content”:user_content},, {“角色”:“助手”,“ content”:Assistion_Content}]] } jsonl_file.write(json.dumps(jsonl_entry)'\ n')
如上所示,我们可以通过DataFrame迭代以创建JSONL文件。
在Openai平台中进行微调
现在,我们可以使用'Messages_Dataset.jsonl'来微调OpenAi LLM。
访问网站并登录如果没有登录。
如果没有任何微调作业,则接口将如下:
我们可以单击“了解更多”,以了解微调所需的所有详细信息,包括可调的超参数。
现在,让我们学习如何在OpenAI平台上微调模型。
- 单击“创建”。一个小窗口将打开。
- 选择该方法作为“监督”
- 选择基本模型作为“ GPT-4O”或“ GPT-4O-MINI”。使用GPT-4O-Mini时,我遇到了错误,所以我使用了GPT-4O。
- 上传JSONL文件。
- 添加与微调工作相关的“后缀”
- 使用任何数字作为“种子”以供可重复使用。
- 选择超参数,然后让它们使用默认值。有关选择它们的指南,请参阅上述文档。
现在,我们可以单击“创建”以启动微调。
调整完成后,将显示如下:
我们可以通过单击右下角的按钮来比较操场上预先存在的模型响应。
这是比较这两个模型的响应的示例:
如我们所见,两个模型的响应之间存在显着差异。
如果我们使用更多示例,那么结果可以改善。
现在让我们了解Google AI Studio。
Google AI Studio
Google AI Studio是一种基于Web的工具,用于使用Gemini LLM构建应用程序。它还允许用户使用自己的数据微调LLM。该自定义增强了模型对特定任务或行业的绩效,使其更加相关和有效。 Gemini型号的微调功能是新推出的,目前仅适用于Gemini 1.5 Flash。截至2025年1月,该调整是免费的,推理成本与现有模型相同。
了解更多信息:Google的AI Studio:您通往双子座创意宇宙的门户!
数据上传
对于双子座模型,数据格式应如下:
training_data = [<br><br> {“ text_input”:“ 1”,“输出”:“ 2”},,<br><br> {“ text_input”:“ 3”,“输出”:“ 4”},],]
Google AI Studio提供了一个GUI(图形用户界面),可以从CSV文件上传数据。为此:
- 打开https://aistudio.google.com/prompts/new_data
- 单击“动作”,然后单击“导入示例”。
- 然后上传CSV文件。屏幕看起来像这样:
- 将USER_CONTENT作为输入列和内容分配为输出列。
- 然后,导入示例。我们可以删除任何不必要的列,然后使用右上角的“保存”按钮保存数据。
在AI工作室进行微调
要微调模型,请访问https://aistudio.google.com/tune。
屏幕看起来像这样:
现在,请按照以下步骤:
- 从下拉菜单中选择导入的数据。
- 给调谐模型一个名称。
- 要了解有关高级设置的更多信息,请参阅https://ai.google.dev/gemini-api/docs/model-tuning。
- 完成后,单击“曲调”。
您可以在“库”中找到调谐模型,如下所示:
我们还可以在聊天中使用该模型,如上图所示。
结论
使用OpenAI平台和Google AI Studio对大型语言模型进行微调模型,使用户可以根据特定的需求量身定制模型。这可能是使LLM采用独特的写作风格或改善其特定领域的性能。两个平台都为数据准备和培训提供了直观的工作流程,并支持结构化格式以优化模型行为。借助可访问的工具和清晰的文档,他们可以通过将LLMS与所需的任务和目标紧密保持一致来释放LLM的全部潜力。
常见问题
Q1。在大型语言模型(LLM)的背景下进行微调?A.微调是培训有关自定义数据的预训练语言模型的过程,以使其行为适应特定的任务,样式或域。它涉及提供输入输出对的示例,以指导模型的响应与用户要求。
Q2。在OpenAI平台和Google AI工作室中进行微调需要哪种数据格式?答:OpenAI平台需要以结构化的JSONL格式进行数据,通常具有“系统”,“用户”和“助手”等角色。 Google AI Studio使用``text_input''和“ output”字段的更简单格式,其中明确定义了输入和所需的输出。
Q3。有效的微调需要多少数据?答:虽然具有30-50个示例的小型数据集可能会显示一些结果,但具有100-500个示例的较大数据集通常通过为模型提供多种多样和上下文富裕的方案而产生更好的性能。
Q4。微调平台与Google AI工作室之间的微调成本如何?A. OpenAI收取基于培训期间令牌用法的微调费用,更大的型号成本更高。 Google AI Studio目前为双子座1.5 Flash型号提供免费的微调,使其成为实验的经济高效选择。
Q5。微调LLM的主要好处是什么?A.微调允许用户自定义模型以与特定要求保持一致,例如以特定的音调或样式生成内容,提高特定领域特定任务的准确性,并通过使模型与预期的用例更相关,从而增强整体用户体验。
以上是OpenAI平台与Google AI Studio for Finetuning LLM的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

Meta的Llama 3.2:多模式和移动AI的飞跃 Meta最近公布了Llama 3.2,这是AI的重大进步,具有强大的视觉功能和针对移动设备优化的轻量级文本模型。 以成功为基础

嘿,编码忍者!您当天计划哪些与编码有关的任务?在您进一步研究此博客之前,我希望您考虑所有与编码相关的困境,这是将其列出的。 完毕? - 让&#8217

本周的AI景观:进步,道德考虑和监管辩论的旋风。 OpenAI,Google,Meta和Microsoft等主要参与者已经释放了一系列更新,从开创性的新车型到LE的关键转变

Shopify首席执行官TobiLütke最近的备忘录大胆地宣布AI对每位员工的基本期望是公司内部的重大文化转变。 这不是短暂的趋势。这是整合到P中的新操作范式

介绍 Openai已根据备受期待的“草莓”建筑发布了其新模型。这种称为O1的创新模型增强了推理能力,使其可以通过问题进行思考

介绍 想象一下,穿过美术馆,周围是生动的绘画和雕塑。现在,如果您可以向每一部分提出一个问题并获得有意义的答案,该怎么办?您可能会问:“您在讲什么故事?

Meta's Llama 3.2:多式联运AI强力 Meta的最新多模式模型Llama 3.2代表了AI的重大进步,具有增强的语言理解力,提高的准确性和出色的文本生成能力。 它的能力t

对于那些可能是我专栏新手的人,我广泛探讨了AI的最新进展,包括体现AI,AI推理,AI中的高科技突破,及时的工程,AI培训,AI,AI RE RE等主题
