在Semantic Kernel中使用多个语言模型

在Semantic Kernel中使用多个语言模型

💡 原文英文,约300词,阅读约需1分钟。
📝

内容提要

本文介绍了如何在Semantic Kernel中注册多个大型语言模型(LLMs),通过serviceId和modelId配置不同的文本生成和嵌入服务。示例代码展示了如何添加Azure OpenAI和Ollama服务,并在执行提示时传递这些ID。所有AI服务实现IAIService接口,支持通过serviceId和modelId选择服务。

🎯

关键要点

  • 本文介绍了如何在Semantic Kernel中注册多个大型语言模型(LLMs)。
  • 使用serviceId和modelId配置不同的文本生成和嵌入服务。
  • 示例代码展示了如何添加Azure OpenAI和Ollama服务。
  • 在执行提示时,可以传递serviceId和modelId。
  • 所有AI服务实现IAIService接口,支持通过serviceId和modelId选择服务。
  • 注册聊天完成服务时,如果提供serviceId,Semantic Kernel会将服务注册为键控服务。
  • IAIService接口定义了服务的元数据属性,包含特定于服务实现的属性。
  • 默认的IAIServiceSelector首先通过serviceId解析服务,然后通过modelId匹配IAIService元数据。
  • 可以实现自定义IAIServiceSelector以获得对AI服务选择的完全控制。

延伸问答

如何在Semantic Kernel中注册多个语言模型?

可以使用serviceId和modelId来注册多个大型语言模型,配置不同的文本生成和嵌入服务。

在Semantic Kernel中,如何使用Azure OpenAI和Ollama服务?

可以通过示例代码添加Azure OpenAI和Ollama服务,使用相应的serviceId和modelId进行配置。

什么是IAIService接口,它的作用是什么?

IAIService接口定义了AI服务的元数据属性,包含特定于服务实现的属性。

如何在执行提示时传递serviceId和modelId?

在执行提示时,可以将serviceId和modelId传递到PromptExecutionSettings中。

Semantic Kernel如何处理服务选择?

默认的IAIServiceSelector首先通过serviceId解析服务,然后通过modelId匹配IAIService元数据。

如何实现自定义IAIServiceSelector?

可以实现自定义IAIServiceSelector以获得对AI服务选择的完全控制,并将其注册为Semantic Kernel的服务。

➡️

继续阅读