admin管理员组

文章数量:1037775

从零搭建Java AI项目:Maven整合与避坑全攻略

前言:

对于 Java 开发者而言,在 Java 环境下搭建 AI 项目的能力变得愈发关键。Java 以其 “一次编写,到处运行” 的特性,以及庞大而稳定的生态系统,为 AI 项目的落地提供了坚实的基础。不过,搭建一个 AI 的 Maven 项目并非坦途,其中涉及的技术细节、框架整合以及依赖管理等,都可能成为前行路上的绊脚石。

接下来,我将凭借自身丰富的实践经验,为大家呈现一份从无到有的 AI 的 Maven 项目搭建指南。不仅会详细阐述搭建步骤,还会将过程中遇到的棘手问题与巧妙解决方法一一分享,助力广大有志于 AI 开发的同学少走弯路,顺利踏入 AI 开发的广阔天地,开启充满创新与挑战的技术之旅。

若你对后续内容有特定的关注点,比如对某类技术难点的深入解析,或者希望了解更前沿的技术应用,都能告诉我,我将在创作中进一步完善。

搭建操作流程:

第一步:创建一个maven项目

第二步:配置相关的xml
代码语言:javascript代码运行次数:0运行复制
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns=".0.0"
         xmlns:xsi=";
         xsi:schemaLocation=".0.0 .0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>org.example</groupId>
    <artifactId>spring.ai.text</artifactId>
    <version>1.0-SNAPSHOT</version>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.2.5</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <properties>
        <java.version>17</java.version>
        <spring-ai.version>0.8.1</spring-ai.version>
    </properties>
    <repositories>
        <repository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>;/url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
    </repositories>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.ai</groupId>
            <artifactId>spring-ai-openai-spring-boot-starter</artifactId>
            <version>${spring-ai.version}</version>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
</project>
第三步:属性的配置
代码语言:javascript代码运行次数:0运行复制
spring.ai.openai.api-key=XXX
spring.ai.openai.base-url=
spring.ai.openai.chat.options.model=gpt-3.5-turbo
server.port=8083

第四步:api的key的获取

邀请码:/register?aff=RW5C

第五步:创建一个控制器
代码语言:javascript代码运行次数:0运行复制
package org.example;
import jakarta.annotation.Resource;
import org.springframework.ai.openai.OpenAiChatClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class AiController {
    @Resource
    private OpenAiChatClient aiClient;
    @PostMapping("/ask")
    public String askQuestion(@RequestBody String prompt) {
        return aiClient.call(prompt);
    }
    @GetMapping("/get")
    public String GetInfo() {
        return aiClient.call("JAVA学习路线");
    }
}
第六步:进行调试接口

最后:

在本次关于搭建 spring.ai 项目的分享中,重点强调了项目搭建过程里最大的阻碍 ——api 配置。由于市面上的 api key 大多需购买,免费资源稀缺,作者贴心提供了一个邀请码,方便同学们注册获取 1 美金金额的使用额度,此额度足以支撑使用相当长一段时间。随着项目推进,当免费金额耗尽,则需购买以继续使用。

本次内容到此暂告一段落,后续文章将聚焦于 spring.ai 项目中生成图片以及流式生成回答的具体写法,为读者进一步深入探索该项目提供更多实操经验与技术指导,持续助力大家在 spring.ai 开发领域的学习与实践。

从零搭建Java AI项目:Maven整合与避坑全攻略

前言:

对于 Java 开发者而言,在 Java 环境下搭建 AI 项目的能力变得愈发关键。Java 以其 “一次编写,到处运行” 的特性,以及庞大而稳定的生态系统,为 AI 项目的落地提供了坚实的基础。不过,搭建一个 AI 的 Maven 项目并非坦途,其中涉及的技术细节、框架整合以及依赖管理等,都可能成为前行路上的绊脚石。

接下来,我将凭借自身丰富的实践经验,为大家呈现一份从无到有的 AI 的 Maven 项目搭建指南。不仅会详细阐述搭建步骤,还会将过程中遇到的棘手问题与巧妙解决方法一一分享,助力广大有志于 AI 开发的同学少走弯路,顺利踏入 AI 开发的广阔天地,开启充满创新与挑战的技术之旅。

若你对后续内容有特定的关注点,比如对某类技术难点的深入解析,或者希望了解更前沿的技术应用,都能告诉我,我将在创作中进一步完善。

搭建操作流程:

第一步:创建一个maven项目

第二步:配置相关的xml
代码语言:javascript代码运行次数:0运行复制
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns=".0.0"
         xmlns:xsi=";
         xsi:schemaLocation=".0.0 .0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>org.example</groupId>
    <artifactId>spring.ai.text</artifactId>
    <version>1.0-SNAPSHOT</version>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.2.5</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <properties>
        <java.version>17</java.version>
        <spring-ai.version>0.8.1</spring-ai.version>
    </properties>
    <repositories>
        <repository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>;/url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
    </repositories>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.ai</groupId>
            <artifactId>spring-ai-openai-spring-boot-starter</artifactId>
            <version>${spring-ai.version}</version>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
</project>
第三步:属性的配置
代码语言:javascript代码运行次数:0运行复制
spring.ai.openai.api-key=XXX
spring.ai.openai.base-url=
spring.ai.openai.chat.options.model=gpt-3.5-turbo
server.port=8083

第四步:api的key的获取

邀请码:/register?aff=RW5C

第五步:创建一个控制器
代码语言:javascript代码运行次数:0运行复制
package org.example;
import jakarta.annotation.Resource;
import org.springframework.ai.openai.OpenAiChatClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class AiController {
    @Resource
    private OpenAiChatClient aiClient;
    @PostMapping("/ask")
    public String askQuestion(@RequestBody String prompt) {
        return aiClient.call(prompt);
    }
    @GetMapping("/get")
    public String GetInfo() {
        return aiClient.call("JAVA学习路线");
    }
}
第六步:进行调试接口

最后:

在本次关于搭建 spring.ai 项目的分享中,重点强调了项目搭建过程里最大的阻碍 ——api 配置。由于市面上的 api key 大多需购买,免费资源稀缺,作者贴心提供了一个邀请码,方便同学们注册获取 1 美金金额的使用额度,此额度足以支撑使用相当长一段时间。随着项目推进,当免费金额耗尽,则需购买以继续使用。

本次内容到此暂告一段落,后续文章将聚焦于 spring.ai 项目中生成图片以及流式生成回答的具体写法,为读者进一步深入探索该项目提供更多实操经验与技术指导,持续助力大家在 spring.ai 开发领域的学习与实践。

本文标签: 从零搭建Java AI项目Maven整合与避坑全攻略