模型参数
根据您选择的模型和提供商,您可以调整多个参数,这些参数将定义:
模型的输出:生成的内容(文本、图像)的创造力或确定性水平、生成的内容量等。
连接性:基本 URL、授权密钥、超时、重试、日志记录等。
通常,您会在模型提供商的网站上找到所有参数及其含义。例如,OpenAI API 的参数可以在https://platform.openai.com/docs/api-reference/chat (最新版本)找到,其中包括以下选项:
范围 描述 类型
modelName 要使用的模型的名称(gtp-3.5-turbo、gpt-4-1106-preview,…) String
temperature 使用什么采样温度,在 0 到 2 之间。较高的值(如 0.8)将使输出更加随机,而较低的值(如 0.2)将使其更加集中和确定性。 Double
max_tokens 聊天完成时可生成的最大令牌数。 Integer
frequencyPenalty -2.0 到 2.0 之间的数字。正值会根据新标记在文本中出现的频率对其进行惩罚,从而降低模型逐字重复同一行的可能性。 Double
… … …
有关 OpenAI LLM 中参数的完整列表,请参阅OpenAI 语言模型页面。每个模型的参数和默认值的完整列表可以在单独的模型页面(集成、语言模型和图像模型下)下找到。
您可以*Model通过两种方式创建:
静态工厂仅接受强制参数(例如 API 密钥),所有其他强制参数均设置为合理的默认值。
构建器模式:在这里,您可以指定每个参数的值。
静态
OpenAiChatModel model = OpenAiChatModel.withApiKey(“demo”);
以 OpenAI 聊天模型为例,一些默认设置如下:
范围 默认值
modelName GPT-3.5-Turbo
temperature 0.7
timeout 60 年代
logRequests 错误的
logResponses 错误的
… …
所有模型的默认值均可在集成下各个提供商的页面上找到。
我们可以使用构建器模式设置模型的每个可用参数,如下所示:
OpenAiChatModel model = OpenAiChatModel.builder()
.apiKey(“demo”)
.modelName(“gpt-4”)
.temperature(0.3)
.timeout(ofSeconds(60))
.logRequests(true)
.logResponses(true)
.build();
在
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。在此仪表板中,您可以进行更改,这些更改将立即反映在正在运行的实例中,并且您的更改将自动移植到代码中。可以使用命令运行 Quarkus 应用程序来访问 DEV UI quarkus dev,然后您可以在 localhost:8080/q/dev-ui(或您部署应用程序的任何位置)上找到它。
有关 Quarkus 集成的更多信息可以在这里找到。
在 Spring
如果您使用我们的Spring Boot 启动器之一,您可以在文件中配置模型参数,application.properties如下所示:
langchain4j.open-ai.chat-model.api-key=${OPENAI_API_KEY}
langchain4j.open-ai.chat-model.model-name=gpt-4-1106-preview
…
支持的属性的完整列表可在此处找到 。
https://docs.langchain4j.dev/tutorials/model-parameters
最后编辑:Jeebiz 更新时间:2024-08-18 23:54