Instructor.NET:基于JsonSchemaExporter 实现大语言模型结构化输出

💡 原文中文,约10500字,阅读约需25分钟。
📝

内容提要

Instructor.NET 是一个 .NET 库,帮助开发者从大语言模型获取结构化输出,支持强类型响应和 OpenAI GPT 模型的集成,提供 JSON 模式验证和可定制输出格式。JsonSchemaExporter 确保响应结构符合预期,提高交互可靠性。

🎯

关键要点

  • Instructor.NET 是一个 .NET 库,旨在从大语言模型获取结构化输出。
  • 该库支持强类型响应、OpenAI GPT 模型集成、Azure OpenAI 服务、JSON 模式验证和可定制输出格式。
  • JsonSchemaExporter 确保响应结构符合预期,提高交互可靠性。
  • 安装 Instructor.NET 可以通过 NuGet 包管理器完成。
  • 使用示例展示了如何创建继承自 ResponseModel 的模型并生成结构化输出。
  • JsonSchemaExporter 允许开发者根据 .NET 类型生成 JSON 模式,以验证和描述 JSON 数据结构。
  • 通过 JsonSchemaExporterOptions 可以定制生成的 JSON 模式,提升生成数据的准确性。
  • InstructorClient 类封装了与 OpenAI 服务的通信逻辑,提供 CreateStructuredOutput<T> 方法获取结构化输出。
  • JsonExtractor 类提供实用方法用于提取和修复 JSON 数据。
  • 项目包含测试代码以验证 InstructorClient 的功能,确保返回的响应符合预期结构。
  • 该项目遵循 MIT 许可协议,欢迎贡献。

延伸问答

Instructor.NET 是什么?

Instructor.NET 是一个 .NET 库,旨在从大语言模型获取结构化输出,支持强类型响应和 OpenAI GPT 模型的集成。

如何安装 Instructor.NET?

可以通过 NuGet 包管理器使用命令 'dotnet add package Instructor.NET' 安装 Instructor.NET。

JsonSchemaExporter 在 Instructor.NET 中的作用是什么?

JsonSchemaExporter 允许开发者根据 .NET 类型生成 JSON 模式,以验证和描述 JSON 数据结构,确保响应结构符合预期。

如何使用 InstructorClient 获取结构化输出?

使用 InstructorClient 的 CreateStructuredOutput<T> 方法,可以根据给定的提示生成结构化输出,返回指定类型的对象。

Instructor.NET 支持哪些模型?

Instructor.NET 内置支持 OpenAI GPT 模型,并可与 Azure OpenAI 服务轻松集成。

如何定制生成的 JSON 模式?

可以通过 JsonSchemaExporterOptions 定制生成的 JSON 模式,提升生成数据的准确性。

➡️

继续阅读