# LangAgent4j **Repository Path**: bllose/LangAgent4j ## Basic Information - **Project Name**: LangAgent4j - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-21 - **Last Updated**: 2026-04-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Learn LangChain4j 这是一个用于学习 LangChain4j 框架的 Java 项目。 ## 问题记录 Langchain 1.13.0 火山Anthropic调用,报错 apikey 不存在 https://ark.cn-beijing.volces.com/api/coding/v1/messages DefaultAnthropicClient 在创建客户端时,为apiKey建立的key值是 "x-api-key",但是火山提供的接口需要`Authorization`,并且 apiKey 的格式也不一样,要求是 `Bearer API_KEY`。 ``` java private HttpRequest toHttpRequest(String jsonRequest, String path) { HttpRequest.Builder builder = HttpRequest.builder() .method(POST) .url(baseUrl, path) .addHeader("Content-Type", "application/json") .addHeader("x-api-key", apiKey) .addHeader("anthropic-version", version) .body(jsonRequest); if (this.beta != null) { builder.addHeader("anthropic-beta", beta); } return builder.build(); } ``` 问题二,请求路径不正确,`createMessageWithRawResponse` 在创建http请求时,组装的path路径是`message`。 但是火山引擎的请求地址是`v1/message`。 ``` java @Override public ParsedAndRawResponse createMessageWithRawResponse(AnthropicCreateMessageRequest request) { HttpRequest httpRequest = toHttpRequest(toJson(request), "messages"); SuccessfulHttpResponse rawResponse = httpClient.execute(httpRequest); AnthropicCreateMessageResponse parsedResponse = fromJson(rawResponse.body(), AnthropicCreateMessageResponse.class); return new ParsedAndRawResponse(parsedResponse, rawResponse); } ``` ## 项目结构 ``` LEARN-LANGCHAIN4J/ ├── pom.xml # Maven 配置文件 ├── .gitignore # Git 忽略文件 ├── README.md # 项目说明文档 └── src/ ├── main/ │ ├── java/com/bllose/langchain4j/ │ │ └── Main.java # 主类 │ └── resources/ │ └── logback.xml # 日志配置 └── test/ ├── java/com/bllose/langchain4j/ │ └── LangChain4jTest.java # 测试类 └── resources/ ``` ## 环境要求 - JDK 17 或更高版本 - Maven 3.6+ - IntelliJ IDEA (推荐) ## 主要依赖 - **LangChain4j** (v0.48.1) - langchain4j-core - langchain4j-open-ai (OpenAI 模型支持) - langchain4j-anthropic (Claude 模型支持) - langchain4j-ollama (本地模型支持) - **Lombok** (v1.18.36) - **JUnit 5** (v5.11.4) - **Logback** (v1.5.16) 日志框架 ## 使用说明 ### 1. 配置环境变量 在使用 OpenAI 模型前,需要设置 API Key: ```bash export OPENAI_API_KEY=your_api_key_here ``` 或者在使用 Anthropic 模型时: ```bash export ANTHROPIC_API_KEY=your_api_key_here ``` ### 2. 运行主程序 ```bash mvn compile exec:java -Dexec.mainClass="com.bllose.langchain4j.Main" ``` ### 3. 运行测试 ```bash mvn test ``` ### 4. 构建 JAR 包 ```bash mvn package ``` ## IDE 配置 ### IntelliJ IDEA 1. 打开 IntelliJ IDEA 2. 选择 `File` → `Open` → 选择项目根目录 3. IDEA 会自动识别 Maven 项目并导入依赖 4. 等待依赖下载完成 ## 学习资源 - [LangChain4j 官方文档](https://docs.langchain4j.dev/) - [LangChain4j GitHub](https://github.com/langchain4j/langchain4j) - [示例代码](https://github.com/langchain4j/langchain4j/tree/main/examples) ## License MIT License