HuggingFace 聊天

HuggingFace 推理端点允许您在云中部署和服务机器学习模型,并通过 API 访问它们。

开始

可以在 此处 找到有关 HuggingFace 推理端点的更多详细信息。

先决条件

添加 spring-ai-huggingface 依赖项

<dependency>
   <groupId>org.springframework.ai</groupId>
   <artifactId>spring-ai-huggingface</artifactId>
</dependency>

您应该获取 HuggingFace API 密钥并将其设置为环境变量

export HUGGINGFACE_API_KEY=your_api_key_here
请参阅 依赖项管理 部分,将 Spring AI BOM 添加到您的构建文件中。

请注意,此聊天实现尚无 Spring Boot Starter。

获取推理端点的端点 URL。您可以在推理端点的 UI 此处 找到此 URL。

调用模型

HuggingfaceChatModel chatModel = new HuggingfaceChatModel(apiKey, basePath);
Prompt prompt = new Prompt("Your text here...");
ChatResponse response = chatModel.call(prompt);
System.out.println(response.getGeneration().getText());

示例

使用 此处 找到的示例

String mistral7bInstruct = """
        [INST] You are a helpful code assistant. Your task is to generate a valid JSON object based on the given information:
        name: John
        lastname: Smith
        address: #1 Samuel St.
        Just generate the JSON object without explanations:
        [/INST]""";
Prompt prompt = new Prompt(mistral7bInstruct);
ChatResponse aiResponse = huggingfaceChatModel.call(prompt);
System.out.println(response.getGeneration().getText());

将生成输出

{
    "name": "John",
    "lastname": "Smith",
    "address": "#1 Samuel St."
}