OpenAI发布新版Function Calling指南,强调「最小惊讶」等软件工程原则

chatGPT网址2025-01-1518

chatgpt 欢迎访问chatgpt中文教程网,学习chatgpt相关知识,以下是正文内容:

OpenAI近日发布了新版Function Calling指南,引入了“最小惊讶”等软件工程原则,旨在提升开发者体验和代码可维护性。新版指南强调函数调用的设计应遵循直观性和一致性,减少开发者在调用API时的困惑和错误。通过简化接口设计和明确功能边界,OpenAI希望帮助开发者更高效地构建应用,同时降低代码复杂性和潜在bug。这一更新也反映了OpenAI对开发者社区的持续支持,旨在推动AI工具在更多场景中的广泛应用。

OpenAI近期对其函数调用功能进行了重大更新,不仅在文档结构上进行了大幅精简,更引入了多项软件工程最佳实践,为开发者提供了更清晰、更高效的开发指导。

推荐使用GPT中文版,国内可直接访问:https://ai.gpt86.top 

更新亮点概览

1、文档精简50%:新版文档去除了冗余内容,聚焦核心功能,使开发者能够更快速地找到所需信息。

2、引入最佳实践指南:新增的指南详细阐述了函数调用的设计原则和实现方法,帮助开发者避免常见错误。

3、集成函数生成器:开发者可以直接在文档中生成并测试函数定义,显著提升开发效率。

4、完整API示例:以天气API为例,从理论到实践,为开发者提供了完整的学习路径。

核心设计原则:最小惊讶原则

OpenAI开发者体验团队的Ilan Bigio分享了本次更新的核心理念——最小惊讶原则,这一原则强调函数设计应符合直觉,避免让使用者感到困惑。

不推荐的设计
toggle_light_switch(on: bool, off: bool)  # 允许矛盾状态
推荐的设计
toggle_light(state: bool)  # 符合最小惊讶原则

通过这种设计,函数的行为更加直观,减少了使用者的理解成本。

软件工程最佳实践

本次更新最大的亮点之一是引入了多项软件工程最佳实践,具体包括:

1、清晰的函数定义

新版指南要求函数定义必须清晰明确,避免歧义。

{
    "type": "function",
    "function": {
        "name": "get_weather",
        "description": "获取指定位置的当前温度",
        "parameters": {
            "type": "object",
            "properties": {
                "location": {
                    "type": "string",
                    "description": "城市和国家,北京,中国"
                }
            },
            "required": ["location"],
            "additionalProperties": false
        },
        "strict": true
    }
}

2、减轻模型负担

Ilan强调:“不要让模型做代码能做的事”。

不推荐
get_orders(user_id)  # 让模型传递user_id
推荐
get_orders()  # 在代码中处理user_id

3、函数合并原则

对于总是连续调用的函数,建议将其合并为一个函数,以减少调用开销:

不推荐
mark_location()
query_location()  # 总是连续调用
推荐
query_and_mark_location()  # 合并为一个函数

实战流程与开发者反馈

新版指南还提供了直观的函数生成器,开发者可以在浏览器中直接生成并测试函数定义,这一功能显著提升了开发效率,获得了开发者社区的高度评价。

社区反响热烈,有开发者表示,新指南的流程图设计达到了Stripe文档的水准,极大地简化了开发流程。

重要细节解析

1、严格模式(Strict Mode)

- 要求additionalProperties设为false

- 所有字段必须标记为required

- 可选字段需要添加null作为类型选项

2、工具选择(Tool Choice)

Auto:默认模式,可调用0个或多个函数

Required:强制调用至少一个函数

Forced Function:强制调用特定函数

3、并行函数调用

- 通过parallel_tool_calls参数控制

- 设为false时确保每次最多调用一个函数

4、令牌使用

- 函数定义会计入模型上下文限制

- 作为输入令牌计费

- 建议限制函数数量或参数描述长度以应对令牌限制

HackerNewsAI评价道:“这份指南不仅简化了开发者的学习曲线,还通过展示实际应用激发创造力,最终将培育出更具创新性的技术生态系统。”

OpenAI此次更新不仅提升了文档的可读性和实用性,更为开发者提供了更高效的开发工具和最佳实践,标志着函数调用功能的进一步成熟。

参考链接

[1] OpenAI官方文档: [https://platform.OpenAI.com/docs/guides/function-calling](https://platform.openai.com/docs/guides/function-calling)

GPT4代充值

本文链接:https://gptwangzhi.top/chatgpt/1701.html

OpenAIFunction Calling最小惊讶

相关文章

网友评论