大型语言模型(LLMS)通常也很难可靠地产生诸如JSON之类的结构化输出,即使有高级提示。虽然迅速的工程有帮助,但它并不完美,偶尔会出现错误。本教程演示了LLM中的函数调用如何确保准确,一致的结构化数据。
函数调用允许LLMS生成结构化数据(通常是JSON)并与外部系统,API和工具进行交互,从而在保持准确性的同时启用复杂的,上下文感知的任务。我们将使用以其准确性而闻名的GPT-4.5来构建功能称呼脚本。首先,我们将创建一个以获取股票价格的功能;然后,我们将添加另一个,让LLM根据提示在多个工具之间进行选择。最终申请将提供股票价格和新闻提要。
来自作者的图像
GPT-4.5的函数调用优势:
GPT-4.5增强了功能调用,改善了与外部系统的交互和复杂的任务处理。关键功能包括:
- API集成:与聊天完成,助手和批处理API一起使用,以进行无缝应用程序集成。
- 结构化输出:返回结构化数据(JSON),非常适合与需要特定数据格式的系统进行交互。
- 视觉功能:接受图像输入(尽管不是视频或音频等多模式输出)。
- 高级功能:通过建议或调用代码中的功能,使任务自动化并集成AI决策来简化复杂的工作流程。
(有关OpenAI模型的详细信息,请参见博客“ GPT 4.5:功能,访问,GPT-4O比较以及更多”。)
单功能通话(股票价格):
我们将使用GPT-4.5和yahooquery
库(用于Yahoo Finance Data)构建一个简单的系统。用户询问股票价格,触发功能以检索并以价格做出回应。
-
安装库:
!PIP安装OpenAi Yahooquery -Q
-
股票价格功能:此Python功能采用股票符号(例如AAPL)并返回其价格。
来自Openai Import Openai 进口JSON 来自yahooquery进口股票 def get_stock_price(ticker): 尝试: t =股票(股票) Price_data = T.Price 如果Price_data和Price_data [tricker] .get(“常规MarketPrice”)中的tricker不是: 价格= Price_data [tricker] [“常规MarkartPrice”] 别的: 返回f“ {tricker}的价格信息不可用。” 除例外为E: 返回f“无法检索{tricker}的数据:{str(e)}” 返回f“ {tricker}当前以$ {PRISE:.2F}的交易
-
定义工具:我们为OpenAI创建一个工具定义(字典列表),指定函数的名称,描述和输出类型。
工具= [{{ “ type”:“函数”, “功能”: { “名称”:“ get_stock_price”, “描述”:“从雅虎财务中获取当前股价。” “参数”: { “类型”:“对象”, “特性”: { “股票”:{“ type”:“ string”} },, “必需”:[“股票”], “额外的properties”:false },, “严格”:是的 } ]]
-
调用该功能:我们将用户消息发送到GPT-4.5,指定模型和工具。
客户端= OpenAi() 消息= [{{“角色”:“用户”,“ content”:“元股票的当前价格是多少?”}] completion = client.chat.completions.create(model =“ gpt-4.5-preview”,messages =消息,工具=工具) 打印(完成。
执行并返回:我们提取股票,运行
get_stock_price
,然后打印结果。然后,我们通过将其发送回自然语言格式的模型来完善响应。
多功能调用(股价和新闻):
我们添加了一个功能,可以使用feedparser
库检索库存新闻。
-
安装
feedparser
:!pip安装feedparser -q
-
股票新闻功能:此功能为给定的股票提供了前三名新闻头条。
进食饲料剂 def get_stock_news(tricker): rss_url = f“ https://feeds.finance.yahoo.com/rss/2.0/headline?s = {ticker}&region = us&lang = en-us” 尝试: feed = feedParser.parse(rss_url) 如果不是饲料。进入: 返回f“没有发现{tricker}的消息”。 news_items = [f“ {entry.title}({entry.link})用于feed.entries [:3]] 返回f“ {tricker}的最新新闻:\ n {chr(10).join(news_items)}” 除例外为E: 返回f“无法检索{tricker}的新闻:{str(e)}”
定义多个工具:我们更新
tools
列表以包括两个功能。模型选择:我们向GPT-4.5提出一个需要两个功能的问题(例如,“ Google股票价格和新闻”)。 GPT-4.5将自动选择并调用适当的功能。
结果处理:我们根据LLM返回的函数名称使用条件逻辑来处理这两个函数的结果。然后将结果传递回LLM,以获得最终的人类可读响应。
结论:
本教程演示了函数如何呼叫授权LLM的能力生成结构化的输出并与外部资源进行交互。这种方法提高了LLM驱动的应用程序的可靠性和准确性,为更复杂的AI系统铺平了道路。像GPT-5这样的未来进步有望在这一领域更大。提供的代码片段可以合并和扩展,以创建更复杂和强大的应用程序。
以上是GPT-4.5功能致电教程:提取AI的股票价格和新闻的详细内容。更多信息请关注PHP中文网其他相关文章!

随着AI应用的爆炸式增长,企业正从传统的搜索引擎优化(SEO)转向生成式引擎优化(GEO)。 谷歌正引领这一转变。其“AI概述”功能已服务于超过十亿用户,在用户点击链接之前提供完整的答案。[^2] 其他参与者也在迅速崛起。ChatGPT、微软Copilot和Perplexity正在创造一种全新的“答案引擎”类别,完全绕过了传统的搜索结果。 如果您的企业没有出现在这些AI生成的答案中,潜在客户可能永远不会发现您——即使您在传统的搜索结果中排名靠前。 从SEO到GEO——这究竟意味着什么? 几十年来

让我们探索人工通用智能(AGI)的潜在途径。 该分析是我正在进行的《福布斯》列的AI进步的一部分,并深入研究了实现AGI和人工超智慧(ASI)的复杂性。 (请参阅相关艺术

人机互动:一场互适应的微妙舞蹈 与AI聊天机器人互动,如同参与一场微妙的相互影响的舞蹈。你的提问、回应和偏好逐渐塑造着系统,使其更好地满足你的需求。现代语言模型通过显式反馈机制和隐式模式识别来适应用户的偏好。它们学习你的沟通风格,记住你的偏好,并逐渐调整其回应以符合你的预期。 然而,在我们训练数字伙伴的同时,同样重要的事情也在反向发生。我们与这些系统的互动正在微妙地重塑我们自身的沟通模式、思维过程,甚至对人际对话的期望。 我们与AI系统的互动已经开始重塑我们对人际互动的期望。我们适应了即时回应、

AI简化了野火恢复允许 澳大利亚科技公司Archistar的AI软件利用机器学习和计算机视觉,可以自动评估建筑计划,以遵守当地法规。这种验证前具有重要意义

爱沙尼亚的数字政府:美国的典范? 美国在官僚主义的效率低下方面挣扎,但爱沙尼亚提供了令人信服的选择。 这个小国拥有由AI支持的近100%数字化的,以公民为中心的政府。 这不是

计划婚礼是一项艰巨的任务,即使是最有条理的夫妇,也常常压倒了婚礼。 本文是关于AI影响的持续福布斯系列的一部分(请参阅此处的链接),探讨了生成AI如何彻底改变婚礼计划。 婚礼上

企业越来越多地利用AI代理商进行销售,而政府则将其用于各种既定任务。 但是,消费者倡导强调个人需要拥有自己的AI代理人作为对经常定位的辩护的必要性

Google正在领导这一转变。它的“ AI概述”功能已经为10亿用户提供服务,在任何人单击链接之前提供完整的答案。[^2] 其他球员也正在迅速获得地面。 Chatgpt,Microsoft Copilot和PE


热AI工具

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

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

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

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

热门文章

热工具

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),