5.1.3.1、【AI技术新纪元:Spring AI解码】Azure OpenAI 函数调用

Azure OpenAI 函数调用

函数调用允许开发人员在他们的代码中创建函数描述,然后将该描述传递给语言模型以进行请求。模型的响应包括与描述相匹配的函数名称以及调用它所需的参数。

您可以使用 AzureOpenAiChatClient 注册自定义 Java 函数,并让模型智能地选择输出包含调用注册函数的参数的 JSON 对象。这使您能够将 LLM 能力与外部工具和 API 连接起来。Azure 模型经过训练,可以检测到何时应该调用函数,并以符合函数签名的 JSON 响应。

并行函数调用仅支持 gpt-35-turbo(1106)和 gpt-4(1106-preview),也称为 GPT-4 Turbo 预览版。
Azure OpenAI API 不直接调用函数;相反,模型会生成 JSON,您可以在代码中使用该 JSON 调用函数,并将结果返回给模型以完成对话。

Spring AI 提供了灵活且用户友好的方式来注册和调用自定义函数。一般来说,自定义函数需要提供函数名称、描述和函数调用签名(作为 JSON 模式),以让模型知道函数期望的参数。描述帮助模型理解何时调用函数。

作为开发人员,您需要实现一个函数,该函数接受从 AI 模型发送的函数调用参数,并将结果返回给模型。您的函数可以调用其他第三方服务以提供结果。

Spring AI 将为您支持函数调用的编写代码大大简化。它为您处理函数调用的对话。您只需将函数定义提供为 @Bean,并在调用 ChatClient 时提供函数的 bean 名称作为选项。

在底层,Spring 使用 FunctionCallback.java 接口和伴随的 FunctionCallbackWrapper.java 实用程序类来简化 Java 回调函数的实现和注册。

工作原理

相关推荐

  1. 5.1.1.1、【AI技术新纪元:Spring AI解码】功能调用

    2024-03-19 12:52:04       36 阅读
  2. 5.7、【AI技术新纪元:Spring AI解码】Prompts

    2024-03-19 12:52:04       38 阅读
  3. 5.5.7、【AI技术新纪元:Spring AI解码】Redis

    2024-03-19 12:52:04       36 阅读
  4. 5.5.9、【AI技术新纪元:Spring AI解码】Qdrant

    2024-03-19 12:52:04       39 阅读
  5. 5.3、【AI技术新纪元:Spring AI解码】图像生成API

    2024-03-19 12:52:04       37 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-19 12:52:04       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-19 12:52:04       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-19 12:52:04       82 阅读
  4. Python语言-面向对象

    2024-03-19 12:52:04       91 阅读

热门阅读

  1. 面试题(补充)

    2024-03-19 12:52:04       46 阅读
  2. openxml对worksheet数值化

    2024-03-19 12:52:04       37 阅读
  3. uniapp 安卓 plus调用原生文件选择

    2024-03-19 12:52:04       34 阅读