AgentScope 学习系列 - 01:环境搭建与初体验

本文便开始进入正题,我们先看看项目的整体依赖。

1. 项目依赖

Java版本:JDK 17

SpringBoot:4.1.1

AgentScope:2.0.2

Maven:3.9.16

2. 创建项目

首先,简简单单先创建一个SpringBoot项目,就不再演示。

添加我们需要的依赖,这里只保留了核心的依赖。

xml 复制代码
    <properties>
        <java.version>17</java.version>
        <agentscope.version>2.0.2</agentscope.version>
    </properties>
    <dependencies>
        
        <dependency>
            <groupId>io.agentscope</groupId>
            <artifactId>agentscope-harness</artifactId>
            <version>${agentscope.version}</version>
        </dependency>

        <dependency>
            <groupId>io.agentscope</groupId>
            <artifactId>agentscope-extensions-model-openai</artifactId>
            <version>${agentscope.version}</version>
        </dependency>
    </dependencies>

HarnessAgent 是推荐的入口,把工作区、长期记忆、会话持久化、子 agent、沙箱等工程能力打包在一个 builder 里;依赖 agentscope-harness 会自动把核心 agentscope-core 一并拉进来,所以这里直接简单粗暴。

gentscope-extensions-model-openai是连接大模型的依赖,AgentScope提供了主流模型的扩展依赖,考虑到我们后期可能使用不同厂商的模型,所以以后统一走openai的模型类型。

AgentScope也为SpringBoot项目提供了各种模型厂家的 starter,我们后期可以动态选择依赖,这里不使用starter。

更多模型依赖插件见:https://java.agentscope.io/v2/zh/integration/model

3. 配置大模型

基本每家模型厂商都会有一些免费额度的模型供我们学习使用,我们这里以阿里云百炼演示。

首先登录阿里云百炼平台,没有账号,需要注册账号登录哈。

关于模型,我们这里主要使用qwen3.8-flash大语言模型和qwen3.7-text-embedding-flash向量模型(列表的最后面一页)。

当然用完了,咱们就继续切换别的模型。

API-KEY我们需要选择按量付费,选择OpenAI格式。

模型名称、Base URL、API Key我们后面要用到。

4. 初体验

需要的东西都创建好了,我们先来体验一下,创建一个最简单的Agent,顺便测试一下上面的账号

java 复制代码
package com.maple.agent.core;

import io.agentscope.core.ReActAgent;
import io.agentscope.core.message.Msg;
import io.agentscope.core.message.UserMessage;
import io.agentscope.extensions.model.openai.OpenAIChatModel;

public class ReActAgent_01 {

    public static void main(String[] args) {

        OpenAIChatModel model = OpenAIChatModel.builder()
                .baseUrl("OpenAI的BaseUrl:https://xxx.cn-beijing.maas.aliyuncs.com/compatible-mode/v1")
                .apiKey("API Key:sk-xxx")
                .modelName("qwen3.8-flash")
                .stream(true)
                .build();

        ReActAgent agent = ReActAgent.builder()
                .name("笑小枫的学习助手")
                .model(model)
                .sysPrompt("你是笑小枫的学习助手,可以帮助用户快速学习使用AgentScope开发智能体。")
                .build();

        Msg reply = agent.call(new UserMessage("你好")).block();

        System.out.println(reply.getTextContent());
    }
}

好了,我们第一个 demo 这样就完成了,是不是感觉很简单,其实就是很简单,我们接下来开始一起学习更多的功能吧。

5. 后续规划

后续为了更方便贴代码和提交代码,我把配置放到yml配置中。

在application.yml 文件添加配置:

yml 复制代码
spring:
  profiles:
    active: dev

创建一个application-dev.yml

yml 复制代码
model:
  open-ai:
    base-url: https://xxx.cn-beijing.maas.aliyuncs.com/compatible-mode/v1
    api-key: sk-xxx
    model-name: qwen3.8-flash

创建一个OpenAiModelConfig.java

java 复制代码
package com.maple.agent.config;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

@Data
@Component
@ConfigurationProperties(prefix = "model.open-ai")
public class OpenAiModelConfig {

    private String baseUrl;
    private String apiKey;
    private String modelName;

}

后续贴代码就使用下面这种方法了

java 复制代码
public static void main(String[] args) {

        // 为了方便提及代码,不暴露隐私信息,密钥放到application-pro.yml中
        ConfigurableApplicationContext ctx = SpringApplication.run(MapleAgentApplication.class, args);
        OpenAiModelConfig props = ctx.getBean(OpenAiModelConfig.class);

        OpenAIChatModel model = OpenAIChatModel.builder()
                .baseUrl(props.getBaseUrl())
                .apiKey(props.getApiKey())
                .modelName(props.getModelName())
                .stream(true)
                .build();

        ReActAgent agent = ReActAgent.builder()
                .name("笑小枫的学习助手")
                .model(model)
                .sysPrompt("你是笑小枫的学习助手,可以帮助用户快速学习使用AgentScope开发智能体。")
                .build();

        Msg reply = agent.call(new UserMessage("你好")).block();

        System.out.println(reply.getTextContent());
    }

6. 写在最后

第一篇简单点,讲究一个不全退,喜欢的朋友可以点个关注。

同时计划创建一个智能体学习沟通群,有兴趣的朋友可以评论或私聊,看看人数。

本系列源码https://gitee.com/hack-feng/maple-agent-demo

本文一览图:

相关推荐
爱学习的程序媛17 小时前
2. 智能应用开发技术栈清单
ai·架构·系统架构·ai应用·智能体开发·智能应用开发
SLD_Allen1 天前
从 Agent Framework 到 Agent Harness,开源 AgentScope 项目新定位
agent framework·agentscope·agent harness
L@ncor2 天前
第六章 框架开发实践 · 学习笔记(AutoGen / AgentScope / CAMEL / LangGraph)
python·框架·autogen·langgraph·agentscope
笑小枫2 天前
AgentScope 学习系列(开篇):Java 开发者如何搭建企业级智能体
agent·智能体开发·agentscope·java开发智能体
L@ncor2 天前
第六章可能出现的问题:依赖冲突与成本乘法
python·依赖管理·langgraph·agentscope·避坑
可乐ea2 天前
用 /create-canvas 给 Copilot 搭一块共享画布:自定义工作流实战
copilot·ai智能体·人机协作·agent开发·githubcopilot·工作流自动化
海天一色y13 天前
RAG 优化实战:从精确召回、QA 生成到上下文压缩的全链路工程化方法
rag·agent开发
龙井茶Sky16 天前
deepagents之准备篇
agent开发·deepagents