当前位置: 首页 > wzjs >正文

Apple 手机网站制作哪些网站有友情链接

Apple 手机网站制作,哪些网站有友情链接,西安微动免费做网站,线上装修设计Spring AI Alibaba实战:Java集成通义千问构建流式对话应用 一、Spring AI核心架构解析 1.1 框架定位与优势对比 graph TDA[Spring AI] --> B[统一API接口]A --> C[多模型支持]A --> D[企业级特性]B --> E(OpenAI/Azure/阿里云)C --> F(LLaMA/Qwen…

Spring AI Alibaba实战:Java集成通义千问构建流式对话应用

一、Spring AI核心架构解析

1.1 框架定位与优势对比

graph TDA[Spring AI] --> B[统一API接口]A --> C[多模型支持]A --> D[企业级特性]B --> E(OpenAI/Azure/阿里云)C --> F(LLaMA/Qwen/Gemini)D --> G(安全审计/监控指标)

1.2 技术栈组成

组件功能描述对应Spring生态
ChatClient标准化对话接口JdbcTemplate
PromptTemplate动态提示词管理Thymeleaf
EmbeddingClient向量计算支持Spring Data
AudioClient语音处理能力Spring Integration

二、环境准备与项目初始化

2.1 开发环境要求

# 验证环境
java -version  # 要求17+
mvn -v        # 3.6.3+
docker info   # 可选容器化部署

2.2 阿里云密钥配置

  1. 登录阿里云百炼控制台

  2. 创建API Key并设置环境变量:

# Linux/Mac
export AI_DASHSCOPE_API_KEY="sk-xxxxxxxx"# Windows(PowerShell)
$env:AI_DASHSCOPE_API_KEY="sk-xxxxxxxx"

三、SpringBoot集成实战

3.1 POM关键配置

<!-- 仓库配置 -->
<repositories><repository><id>spring-snapshots</id><url>https://repo.spring.io/snapshot</url></repository>
</repositories><!-- 依赖配置 -->
<dependencies><dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-alibaba-starter</artifactId><version>1.0.0-M2</version></dependency><!-- 流式响应支持 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-webflux</artifactId></dependency>
</dependencies>

运行 HTML

3.2 应用配置(application.yml)

spring:ai:dashscope:api-key: ${AI_DASHSCOPE_API_KEY}chat:options:model: qwen-max  # 可选qwen-plus/qwen-turbotemperature: 0.7

四、核心代码实现

4.1 流式对话控制器

@RestController
@RequestMapping("/ai")
@CrossOrigin
public class ChatController {private final StreamingChatClient chatClient;@Autowiredpublic ChatController(StreamingChatClient.Builder builder) {this.chatClient = builder.build();}@GetMapping("/stream")public Flux<String> streamChat(@RequestParam String question,@RequestParam(defaultValue = "false") boolean markdown) {String template = markdown ? "请用Markdown格式回答:{input}" : "{input}";Prompt prompt = new PromptTemplate(template).create(Map.of("input", question));return chatClient.stream(prompt).map(ChatResponse::getResults).flatMapIterable(list -> list).map(content -> content.getOutput().getContent());}
}

4.2 增强型提示词模板

// resources/prompts/qa.st
你是专业IT顾问,请用中文回答技术问题。
用户问题:${input}
回答要求:
1. 包含代码示例
2. 给出参考资料链接
3. 使用${markdown ? 'Markdown' : '纯文本'}格式

五、前端集成方案

5.1 React流式接收实现

function ChatBox() {const [messages, setMessages] = useState([]);const handleSend = async (question) => {const response = await fetch(`/ai/stream?question=${encodeURIComponent(question)}&markdown=true`);const reader = response.body.getReader();const decoder = new TextDecoder();let fullResponse = '';while (true) {const { done, value } = await reader.read();if (done) break;const chunk = decoder.decode(value);fullResponse += chunk;setMessages([...messages, {id: Date.now(),content: fullResponse,isBot: true}]);}};return (<div className="chat-container"><MessageList messages={messages} /><InputArea onSend={handleSend} /></div>);
}

六、生产环境最佳实践

6.1 性能优化方案

优化方向具体措施预期收益
连接池配置HTTP连接复用降低30%延迟
缓存启用Response缓存(Spring Cache)减少API调用
熔断机制集成Resilience4j提高可用性

6.2 安全防护策略

  1. 输入过滤

@GetMapping("/safe-stream")
public Flux<String> safeStream(@RequestParam @Valid @Size(max=500) String input) {// 自动校验输入长度
}
  1. 速率限制

@Bean
RateLimiterRegistry rateLimiter() {return RateLimiterRegistry.custom().add("qwen-api", RateLimiterConfig.custom().limitForPeriod(50).limitRefreshPeriod(Duration.ofMinutes(1)).build()).build();
}

七、扩展应用场景

7.1 企业级应用架构

graph LRA[前端] --> B[API Gateway]B --> C{Spring AI Router}C -->|普通问答| D[Qwen]C -->|技术文档| E[LLaMA-3]C -->|安全审核| F[阿里云内容安全]

7.2 典型业务场景

  1. 智能客服

    @Prompt("你是{company}客服,请处理以下问题:{input}")
    Flux<String> handleComplaint();
  2. 代码生成

    @PromptTemplate("生成{language}代码实现:{requirement}")
    Mono<String> generateCode();

项目效果截图:

本文代码已通过以下环境验证:

  • JDK 17.0.8

  • Spring Boot 3.3.4

  • Qwen-72B-Chat模型
    完整示例代码已上传Java调用LLM大模型 - 基于 Spring AI 实现

http://www.dtcms.com/wzjs/630.html

相关文章:

  • vs2013网站开发代码国外常用的seo站长工具
  • 云尚网络建站seo关键词排名优化软件怎么选
  • 网站怎么做的支付宝接口广告媒体资源平台
  • 免费建立网站论坛谷歌商店下载安装
  • 武汉p2p网站建设价格线上推广平台哪些好
  • 自已的电脑怎么做网站电商营销的策略与方法
  • 滴道网站建设广州网站优化工具
  • 网站建设 总体思路个人怎么建立网站
  • 做家具厂招聘有哪些网站网络营销是什么工作主要干啥
  • 深圳手机建网站效果好的关键词如何优化
  • 大型网站的标准网上推广培训
  • 互联网公司网站源码免费seo公司
  • 建设自己的网站有钱赚么今日头条新闻推荐
  • 如何给自己做的网站加上域名北京网站推广公司
  • 张掖网站建设0936e百度大数据官网入口
  • 网站开发百灵鸟世界最新新闻
  • 做网站宁波有什么的网络公司东莞网站建设推广
  • 国外的一些网站百度百科合作模式
  • 宝塔wordpress加速昆明seo
  • 政府网站建设的战略软文代发价格
  • 怎么做一个公众号广州软件系统开发seo推广
  • 广州广告网站建设企业网站营销
  • 义乌做网站哪家好100个免费推广网站
  • 红桥网站建设公司石家庄seo排名外包
  • 海口有哪几家是做网站的哪个杭州seo好
  • 新泰房产网58个人出售广州seo怎么做
  • 建网站 服务器需要安装 tomcat恢复原来的百度
  • 知识库wordpress插件惠州百度seo在哪
  • 云计算网站建设广州关键词快速排名
  • 网络服务合同需要缴纳印花税吗百度推广优化师培训