AI 大模型之美
徐文浩
bothub 创始人
32336 人已学习
新⼈⾸单¥68
登录后,你可以任选4讲全文学习
课程目录
已完结/共 33 讲
AI 大模型之美
15
15
1.0x
00:00/00:00
登录|注册

加餐一|让你的GPT稳定输出,JSON模式和Fingerprint

你好,我是徐文浩。
过去一年,是整个 AI 领域风驰电掣的一年。希望「AI 大模型之美」这门课程,让你对大模型领域有了一个完整的认识。而随着 AI 大模型领域的进一步发展,无论是 OpenAI 开放的 API 能力,还是开源领域百花齐放的各种模型,都有了长足的进步和发展。
所以,在这新的一年里,我会对「AI 大模型之美」这门课程做一个更新。一方面,是查漏补缺,修订一下已经上线的内容。因为无论是 OpenAI 提供的 GPT,还是 llama-index 和 LangChain 这样的开源项目,在 API 上都发生了很大的变化。另一方面,则是提供一些更深入的内容,因为 OpenAI 和百花齐放的开源领域,都提供更丰富的 AI 能力,让我们开发 AI 的应用更加方便了。

废弃 Completions 接口,使用 Chat Completions 接口

在这个课程一开始的时候,我就以一个给跨境电商的商品写标题的例子向你展示了 GPT-3.5 模型的能力。
from openai import OpenAI
import os
client = OpenAI(
api_key=os.environ['OPENAI_API_KEY'],
)
COMPLETION_MODEL = "text-davinci-003"
prompt = """
Consideration proudct : 工厂现货PVC充气青蛙夜市地摊热卖充气玩具发光蛙儿童水上玩具
1. Compose human readale product title used on Amazon in english within 20 words.
2. Write 5 selling points for the products in Amazon.
3. Evaluate a price range for this product in U.S.
Output the result in json format with three properties called title, selling_points and price_range
"""
def get_response(prompt, model=COMPLETION_MODEL):
completions = client.completions.create (
model=COMPLETION_MODEL,
prompt=prompt,
max_tokens=512,
n=1,
stop=None,
temperature=0.0,
)
message = completions.choices[0].text
return message
print(get_response(prompt))
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

本文介绍了如何通过使用JSON模式和Fingerprint来稳定输出GPT。作者首先提到了AI领域的飞速发展,以及对“AI大模型之美”课程的更新。随后,作者讨论了OpenAI API的变化,指出了以前使用的text-davinci-003模型已被废弃,需要替换为gpt-3.5-turbo-instruct模型。作者还建议读者不再使用Completions接口,而是转而使用Chat Completions接口,并提供了相应的代码示例。 在文章的后半部分,作者介绍了如何使用Chat Completions接口的JSON格式输出,以及如何调整代码以确保输出的JSON格式符合预期。通过本文,读者可以了解到如何适应OpenAI API的变化,以及如何使用Chat Completions接口来实现让GPT输出稳定的能力。 此外,文章还介绍了如何使用seed参数和Fingerprint来确保输出结果的稳定性和可复现性。通过设置相同的seed参数和其他参数,读者可以实现在相同输入情况下获得一致的输出结果。作者还提到了使用embedding计算输出结果之间的距离来验证它们的一致性。 总的来说,本文为读者提供了关于稳定输出GPT和确保结果可复现的实用技巧,帮助他们更好地应用OpenAI API进行模型调用和结果处理。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《AI 大模型之美》
新⼈⾸单¥68
立即购买
登录 后留言

全部留言(2)

  • 最新
  • 精选
  • 王平
    老师如果需要输出是一种自定义的数据结构,有什么好的方法吗?
    2024-02-22归属地:上海
    1
    1
  • Toni
    试了一下,以期得到每次输出的结果都完全一样,这是概率模型输出的难点。 调用的参数是 temperature=0.0, seed=12345, 相同的 fingerprint。试了多次,一致性达到前4个卖点都相同已是我得到的最佳结果。 结果1: fp_2b778c6b35 { "title": "Inflatable Frog Night Market Hot Selling Toy with LED for Kids", "selling_points": [ "工厂现货,质量可靠", "可充气,易携带", "发光设计,吸引眼球", "适合水上玩耍,增加乐趣", "可作为地摊销售,商机多" ], "price_range": "$10 - $20" } 结果2: fp_2b778c6b35 { "title": "Inflatable Frog Night Market Hot Selling Toy with LED for Kids", "selling_points": [ "工厂现货,质量可靠", "可充气,易携带", "发光设计,吸引眼球", "适合水上玩耍,增加乐趣", "可用于夜市地摊销售" ], "price_range": "$10 - $20" } 用英文输出,一致性也无明显提高。 在本例中,提示词中要求给出相关商品的5个卖点,输出结果保持完全一致对概率模型而言并不容易,当然在本示例中也无必要,但它却提供一个很好的观察点。
    2024-03-03归属地:瑞士
收起评论
显示
设置
留言
2
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部