# jq-ai-code **Repository Path**: hjq1803/jq-ai-code ## Basic Information - **Project Name**: jq-ai-code - **Description**: AI代码生成平台是基于 Spring Boot3+LangChain4j+LangGraph4j+ Vue技术构建的智能体应用。实现一句话自动生成网站应用,包括生成复杂的多文件vue项目网站,并自动部署Vue项目实现预览,可以下载源码等。 - **Primary Language**: Java - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 4 - **Forks**: 1 - **Created**: 2025-08-02 - **Last Updated**: 2025-10-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # AI应用生成平台 是基于 Spring Boot3+LangChain4j+LangGraph4j+ Vue技术构建的 **AI智能体平台** 。一句话自动生成网站应用,可以预览网站和下载网站源码,包括生成复杂的多文件vue项目网站,并实现预自动部署Vue项目。 **LangChain4j:** 面向 Java 生态的 LLM(大语言模型)应用开发框架,简化 LLM 与 Java 应用程序的集成。提供统一的 API接入支持15 多个流行的 LLM ,封装了全面的工具箱可以方便的调用AI的能力:提示词、聊天记忆、RAG、工具等。 **LangGraph4j:** 核心功能是定义循环图,使不同的组件(代理、工具或自定义逻辑)能够以有状态的方式进行交互。可以构建状态丰富多智能体应用,与Langchain4j和Spring AI等流行的 Java LLM 框架无缝协作。总结来说LangGraph4j可以帮助开发构建多智能体应用协调工作的工具。 功能图 ## AI工作流 用户输入描述后调用(千问LLM模型)实现 **AI动态路由** 进行流程流转,在调用(千问LLM模型)实现 **AI智能代码生成** 流程图 ## 技术亮点 - LangChain4j构建Al智能体开发 - LangGraph4j实现AI工作流开发 - AI智能路由 - AI流式输出 - AI工具调用机制 - AI提示词编写 - AI对话记忆持久化和隔离 - 设计模式(模版模式、代理模式、观察者模式、单例模式) - 游标翻页设计 - 动态部署vue项目 - 网站封面自动生成 ## 项目截图
## 技术选型 | 说明 | 技术 | |---|---| | 后端框架 | Spring Boot(3.X)+Spring+Mybatis Plus | | 前端框架 | Vue(2.0) | | 登录鉴权 | SaToken | | 数据库 | MySQL | | 缓存 | Redis | | 反向代理 | Nginx | | AI 智能体 | LangChain4j | | AI 工作流 | LangGraph4j | ## 部署环境 ● JDK >= 21 ● MySQL >= 5.7 ● Maven >= 3.0 ● Redis >=3 ● Nginx ● Node >=12 ## 项目启动配置 **后端项目** **application.yml** 1. langchain4j:需要配置AI模型的key,阿里千问新用户有免费的key可以试用 2. web-screenshot.url:配置生成的项目网站截图url前缀(nginx要配置反向代理到新生成项目路径) **前端项目** **jq-ai-code-ui前端项目的.env.production文件** 1. 配置后台项目api地址 2. 配置生成的项目网站截图url前缀(跟后台的web-screenshot.url一致) **nginx配置** ``` json server { listen 8089; server_name localhost; # 统一前缀:/code,对应本地目录 D:/IdeaProjects/jq-ai-code/tmp/code_output # 这样你访问的 URL 就是: http://localhost:8089/code/<任意层级>/dist/ # 例: http://localhost:8089/code/2025-08-10/html_1954474548317413378/dist/ # 统一前缀,把整个 code_output 目录挂到 /code/ location ^~ /code/ { alias D:/Work/Project/jq-ai-code/tmp/code_output/; # 对应你本地项目的路径 index index.html; # 命中文件或目录;否则进入 @code_spa 做 SPA 回退 try_files $uri $uri/ @code_spa; } # 静态资源强缓存 location ~* ^/code/.*\.(js|css|png|jpg|jpeg|gif|svg|ico|woff2?|ttf|map)$ { alias D:/IdeaProjects/jq-ai-code/tmp/code_output/; access_log off; expires 1y; add_header Cache-Control "public, max-age=31536000, immutable"; try_files $uri =404; } } ```