Skip to content
LangChain4j 文档版本 1.22.0 源快照 0a843987 更新于 2026-10-14

JSON 编解码器

LangChain4j 内置了一个 JSON 序列化器(默认使用 Jackson),供“工具”和“结构化输出”功能使用。

如果你只想让 LangChain4j 改用 Jackson 3 而非 Jackson 2, 完全不需要下面这些步骤——只需添加一个依赖即可。参见使用 Jackson 3。

默认的序列化器适用于绝大多数场景。但在某些环境中,默认的 Jackson 序列化器可能因其他依赖而报错。一个例子是 Jetbrains/IntelliJ 插件的开发者。

如果你需要自行提供 JSON 序列化器(即 JSON 编解码器),可以按照以下步骤操作:

  1. 在你的项目中创建 dev.langchain4j.spi.json.JsonCodecFactory 的一个实现

在本例中,假设你的工厂类是:example.MyJsonCodecFactory

你可以参考 dev.langchain4j.internal.JacksonJsonCodec,它是 LangChain4j 内部使用的默认编解码器,并据需要进行改造。

  1. 添加一个 SPI 提供者配置文件

在你的资源目录(例如 src/main/resources)中新建一个 META-INF/services 文件夹,并创建一个名为 dev.langchain4j.spi.json.JsonCodecFactory 的文件,其内容必须是你工厂实现类的全限定名(FQDN),在本例中应为:

example.MyJsonCodecFactory

一点提醒

dev.langchain4j.spi.json.JsonCodecFactory 在 LangChain4j 中被标记为内部使用——这种方式只应在确实需要自定义 JSON 编解码器的环境中使用。

BytesRouter 是社区翻译站点,所有译文仅供参考,一切以官方英文原文为准。