主题
模型参数
根据你所选的模型与提供者,你可以调整众多参数,它们用于定义:
- 模型的输出:所生成内容(文本、图像)的创造性或确定性程度, 所生成内容的体量,等等。
- 连接性:base URL、授权密钥、超时、重试、日志,等等。
通常,你能在模型提供者的网站上找到所有参数及其含义。 例如,OpenAI API 的参数可在 https://platform.openai.com/docs/api-reference/chat (最新版本)找到,包含如下选项:
| 参数 | 描述 | 类型 |
|---|---|---|
modelName | 所使用的模型名(例如 gpt-4o、gpt-4o-mini 等) | String |
temperature | 使用的采样温度,介于 0 与 2 之间。较高的值(如 0.8)会让输出更随机,而较低的值(如 0.2)会让它更聚焦、更确定。 | Double |
maxTokens | 聊天补全中可生成的最大词元数。 | Integer |
frequencyPenalty | 介于 -2.0 与 2.0 的数值。正值会依据新词元到目前为止在文本中已有的出现频率对其施加惩罚,降低模型逐字重复同一行的可能性。 | Double |
... | ... | ... |
OpenAI LLM 参数的完整列表,参见 OpenAI 语言模型页。 各模型完整的参数与默认值列表可在各个模型页找到 (位于 Integration、Language Model 与 Image Model 之下)。
你可以用两种方式创建 *Model:
- 一个只接受必填参数(如 API 密钥)的静态工厂, 其余所有必填参数都设为合理的默认值。
- 一个 builder 模式:在这里你可以为每个参数指定取值。
模型 Builder
我们可以用 builder 模式按如下方式设置模型所有可用的参数:
java
OpenAiChatModel model = OpenAiChatModel.builder()
.apiKey(System.getenv("OPENAI_API_KEY"))
.modelName("gpt-4o-mini")
.temperature(0.3)
.timeout(ofSeconds(60))
.logRequests(true)
.logResponses(true)
.build();在 Quarkus 中设置参数
Quarkus 应用中的 LangChain4j 参数可以按如下方式在 application.properties 文件中设置:
quarkus.langchain4j.openai.api-key=${OPENAI_API_KEY}
quarkus.langchain4j.openai.chat-model.temperature=0.5
quarkus.langchain4j.openai.timeout=60s有趣的是,为了调试、调优,乃至仅仅了解所有可用的参数, 你可以查看 Quarkus DEV UI。 在这个控制台里,你可以做出会立即反映到运行实例中的修改, 而这些修改会被自动回写到代码。 DEV UI 可通过用 quarkus dev 命令运行你的 Quarkus 应用来访问, 随后你可以在 localhost:8080/q/dev-ui(或你部署应用的地址)找到它。

关于 Quarkus 集成的更多信息可在这里找到。
在 Spring Boot 中设置参数
如果你使用我们的某个 Spring Boot starter, 你可以按如下方式在 application.properties 文件中配置模型参数:
langchain4j.open-ai.chat-model.api-key=${OPENAI_API_KEY}
langchain4j.open-ai.chat-model.model-name=gpt-5.4-mini
...受支持属性的完整列表可在 这里找到。
关于 Spring Boot 集成的更多信息可在这里找到。