Content
# Tool List
SpringAI-based demo project to quickly experience SpringAI capabilities and record personal experience with SpringAI for large model upper-level application development, also providing references for Java developers interested in large model application development.
Main Site: [https://ppai.top](https://ppai.top)
## Technology Stack
- SpringBoot 3.5.3
- SpringAI ~~1.0.1~~ 🚀upgraded to -> 1.1.2
- LangGraph4J
- Java17
- Maven
The v2 directory contains examples based on SpringAI 2.x:
- Java21
- SpringBoot 4.x
- SpringAI 2.x
Spring-Ai-alibaba related example projects are in the ali/ directory:
- Java17+
- spring-ai-alibaba-agent-framework: 1.1.2.1
### Local Startup Instructions
All projects in this repository are independent and do not depend on each other; you can choose any project and start it using its Application startup class.
However, before starting, please replace the model configuration in `resources/application.yml` according to your actual model needs.
For keys, during local development, you can inject them through environment context, startup parameters, configuration file hardcoding, etc.; you can also copy the [.env.example](./.env.example) file and name it `.env`.
Then, in this configuration file, maintain the ApiKey, and the project will automatically read the ApiKey when started, mainly relying on [spring-ai-demo-starter](./spring-ai-demo-starter) for support.
## Tutorial Directory
### 1. Basic Tutorial
Introduces basic SpringAI usage, corresponding project engineering starts with `Sxx-`, through these examples, you will master SpringAI basics (such as prompts, context, structured output, tool calling, MCP, advise, ChatClient, multi-models) and start using SpringAI for large model application development.
- [x] [01. Create a SpringAI-Demo Project](docs/01. Create a SpringAI-Demo Project.md)
- [x] [02. Prompt Usage](docs/02. Prompt Settings.md)
- [x] [03. Structured Return](docs/03. Structured Return.md)
- [x] [04. Chat Context for Multi-Round Conversation](docs/04. Chat Context.md)
- [x] [05. Custom Large Model Access](docs/05. Custom Large Model Access.md)
- [x] [06. Function Tool Calling](docs/06. Tool Calling.md)
- [x] [07. Implement a Simple MCP Server](docs/07. Implement a Simple MCP Server.md)
- [x] [08. Simple Authentication for MCP Server](docs/08. MCP Server Simple Authentication Implementation.md)
- [x] [09. ChatClient Usage Instructions](docs/09. ChatClient Usage Instructions.md)
- [x] [10. Advisor for SpringAI Interactive Enhancement](docs/10. Advisor for SpringAI Interactive Enhancement.md)
- [x] [11. Image Model - Generate Images](docs/11. Image Model.md)
- [x] [12. Multi-Modal Example for Ingredient Picture Calorie Identification](docs/12. Multi-Modal Example for Ingredient Picture Calorie Identification.md)
- [x] [13. AI Dialogue Implementation Supporting MCP Client](docs/13. AI Dialogue Implementation Supporting MCP Client.md)
- [x] [14. Create a LangGraph4J Example Project](docs/14. Create a LangGraph4J Example Project.md)
- [x] [15. Access OpenAI Interface Style Large Model](docs/15. Access OpenAI Interface Style Large Model.md)
- [x] [16. Asynchronous Streaming Model Calling](docs/16. Asynchronous Streaming Model Calling.md)
- [x] [17. Reasoning Large Model Access and Return](docs/17. Reasoning Large Model Access and Return.md)
- [x] [18. Voice Model - Voice Recognition](https://www.ppai.top//ai-guides/ai-dev/基础篇/18.语音模型之语音识别.html#_1-初始化)
- [x] [19. Tool Calling from Automatic to Manual Control](https://mp.weixin.qq.com/s/TbTnpPkVPY_bTts_l8ltGQ)
- [ ] [Audio Model](docs/)
- [ ] [Retrieval-Augmented Generation RAG](docs/)
### 2. Advanced Tutorial
Introduces advanced usage of SpringAI for large model application development, corresponding examples are in the [advance-projects](./advance-projects) directory.
- [x] [01. Persisting Conversation History with MySql](docs/A01. Persisting Conversation History with MySql.md)
- [x] [02. Persisting Conversation History with H2](docs/A02. Persisting Conversation History with H2.md)
- [x] [03. Persisting Conversation History with Redis](docs/A03. Persisting Conversation History with Redis.md)
- [x] [04. Implementing Multi-Round Conversation with LangGraph4J](docs/A04. Implementing Multi-Round Conversation with LangGraph4J.md)
- [x] [05. Implementing Agent Routing Selection with LangGraph4J](docs/A05. Implementing Agent Routing Selection with LangGraph4J.md)
- [x] [06. Redefining Intelligent Applications with SpringAI Agent + Skills](https://mp.weixin.qq.com/s/ujxVleNhjxzUgL-rjfFcVA)
- [x] [07. The Art of Multi-Round Conversation in Spring AI: Let Large Models Actively Ask Questions](https://mp.weixin.qq.com/s/LcvmiIERs6aOIlRAKGGnFg)
- [x] [08. In-Depth Understanding of ReAct Mode: Implementing a ReAct Agent from Scratch](https://mp.weixin.qq.com/s/mJIibMdAFSDgXZBsM3tuPw)
### 3. Application Tutorial
Aims to build complete and usable SpringAI applications, demonstrating business boundaries and performance, corresponding projects are in the [app-projects](./app-projects) directory.
- [x] [Create a Weather-Based Tourism Food Recommendation Agent from Scratch](docs/D01. Create a Weather-Based Tourism Food Recommendation Agent from Scratch.md)
- [x] [Large Model Application Development Practice: Implementing a Natural Language Address Extraction Agent in Two Hundred Lines](https://mp.weixin.qq.com/s/96rHyp_gBUgmA2dhSbzNww)
- [x] [Farewell to OCR Templates! Hello, Invoice Intelligent Extraction Architecture Based on SpringAI and Large Models](https://mp.weixin.qq.com/s/SnXdTB6tYqAzG7HgbnTSAQ)
- [x] [Practical | Building a Knowledge Base Question and Answer Robot from Scratch: Complete Implementation Based on SpringAI + RAG](https://mp.weixin.qq.com/s/NHqLJbos-_nrxNNmhg7IBQ)
- [x] [I Built a WeChat Red Envelope Cover Designer with SpringAI](https://mp.weixin.qq.com/s/QyuWZ4EZ32pbcWn3fVphHQ)
- [x] [Practical Experience! Integrating Speech Recognition with Spring AI to Achieve Real-Time Translation Robot](https://mp.weixin.qq.com/s/qF0RfLts-fuMzv-uJZnBig)
- [x] [Bid Farewell to Pure Text Chat: Building a Streaming Conversation System Supporting Rich UI Based on Spring AI](https://mp.weixin.qq.com/s/U6ua-dpkVZTYT1n5JXiYDg)
Corresponding application examples:
| Agent | Diagram |
|-----------------------------------------------------------------------|--------------------------------------------------------------------|
| [RAG Question and Answer Robot](https://mp.weixin.qq.com/s/mJIibMdAFSDgXZBsM3tuPw) |  |
| [WeChat Red Envelope Cover Designer](https://mp.weixin.qq.com/s/QyuWZ4EZ32pbcWn3fVphHQ) |  |
| [Speech Recognition Translation Robot](https://mp.weixin.qq.com/s/qF0RfLts-fuMzv-uJZnBig) |  |
| [Natural Language to SQL with Human Approval](https://mp.weixin.qq.com/s/454LmLMAVDuZfi6t-DgSqg) |  |
### 4. Source Code Interpretation
Introduces SpringAI core implementation from a source code perspective, corresponding projects start with `Yxx-`
### 5. LLM Application Development Introduction
- [What is LLM Application Development: A Popular Science Article for Beginners](https://mp.weixin.qq.com/s/qCn8x2XO2shA8MheYbHq0w)
- [Large Model Application Development Series: Preface - Why You "Know LLM" but Can't Make Complex Applications?](https://mp.weixin.qq.com/s/2GXBNOUq3jlysipftz8TpA)
- [Large Model Application Development Series: Chapter 1 What Does LLM Do?](https://mp.weixin.qq.com/s/v-z6EHY300ElOxdGPdzc0w)
- [Large Model Application Development Series: Chapter 2 Models Are Not the Focus, Parameters Are Your Real Control Panel](https://mp.weixin.qq.com/s/t_BuAW9i0npcaJdua3Am2Q)
- [Large Model Application Development Series: Chapter 3 Why My Prompt Performs Poorly?](https://mp.weixin.qq.com/s/vzt0bGwcfnASOiBa0Kc7VQ)
- [Large Model Application Development Series: Chapter 4 Prompt Engineering Structure Design](https://mp.weixin.qq.com/s/Nk-N34TLJVCTI5F4k5rGaQ)
- [Large Model Application Development Series: Chapter 5 From Prompt to Prompt Template and Engineering Governance](https://mp.weixin.qq.com/s/ZQbztqBq7_PzynG06N4-mg)
- [Large Model Application Development Series: Chapter 6 The Real Boundary of Context Window](https://mp.weixin.qq.com/s/nnKspRO87xbrn4-LBV3RNA)
- [Large Model Application Development Series: Chapter 7 From "Piling Context" to "Managing Context"](https://mp.weixin.qq.com/s/_5D2tF6CPnafj5mlmlwLNw)
- [Large Model Application Development Series: Chapter 8 Engineering Choice of Memory Strategy](https://mp.weixin.qq.com/s/z5qaLtjChsvjhWNs8Nw05Q)
Agent development-related knowledge sharing:
- [Complex Tasks? Try Letting a Group of AI Divide and Cooperate - Multi-Agent System Practice Interpretation](https://mp.weixin.qq.com/s/pdG9C0CQVYFUleftfga3bA?token=1761013062&lang=zh_CN)
- [When Spring AI Alibaba Meets Multi-Agent: Unlocking Intelligent Teamwork Mode](https://mp.weixin.qq.com/s/wrKymQhomKCf9yi-bHbmyg?token=1761013062&lang=zh_CN)
- [Agent Development Avoid Pitfalls | From "All In" to "Refined Selection": Tool Management Challenges in Agent Development](https://mp.weixin.qq.com/s/Cu5J6q1jj1j9Chrxzfy5fg)
### 6. LangChain Related
- [LangChain Development Introduction Series](https://liuyueyi.github.io/langchain-demo/#)
### 7. SpringAI Alibaba
SpringAI alibaba is an open-source project based on SpringAI, providing integration solutions. It includes three layers:
- Agent Framework, a ReactAgent design concept-based Agent development framework, enabling developers to build agents with automatic context engineering and human-computer interaction capabilities.
- Graph, a low-level workflow and multi-agent coordination framework, helping developers implement complex application orchestration with rich preset nodes and simplified graph state definition. Graph is the underlying runtime base for Agent Framework.
- Augmented LLM, based on Spring AI framework underlying atomic abstraction, providing basic abstraction for building large language model (LLM) applications, such as model (Model), tool (Tool), multi-modal components (MCP), message (Message), vector store (Vector Store), etc.
In the [ali](./ali) directory, there are usage example projects based on SpringAI alibaba, where example projects start with `Lxx-`
- [01. Spring AI Alibaba Intelligent Body Development Basic Example](https://www.ppai.top/ai-guides/ai-dev/ALiAI/L01.Spring%20AI%20Alibaba%20%E6%99%BA%E8%83%BD%E4%BD%93%E5%BC%80%E5%8F%91%E4%BD%BF%E7%94%A8%E4%BD%93%E9%AA%8C.html)
- [02. From Natural Language to SQL, Adding a Human Defense Line: Spring AI Alibaba Practice](https://mp.weixin.qq.com/s/454LmLMAVDuZfi6t-DgSqg)
- [03. Mastering Spring AI Alibaba Skill from Scratch: Definition, Registration, and Gradual Disclosure](https://mp.weixin.qq.com/s/TfTfQx1e661s6-cgVP8lwg)
- [04. Spring AI Alibaba Practice: Implementing a Multi-Round Dialogue Assistant for Express Ordering from Scratch](https://mp.weixin.qq.com/s/phTndkT6-FzpJw6jSo3lHQ)
- [05. Multi-Agent Practice | Implementing a Story Creation Agent from Scratch Based on Spring AI Alibaba](https://mp.weixin.qq.com/s/k_3viD7wDe616hhpiWvyrQ)
- [06. Multi-Agent Practice | Implementing a Solution Planning Multi-Agent Based on Spring AI Alibaba](https://mp.weixin.qq.com/s/iKOAzyAZxm1u5ooxcmCNBA)
### 8. AgentScope
AgentScope Java 2.0 is an enterprise-level, distributed, and production-ready intelligent body framework, providing core Harness abstraction matching model capabilities, supporting long-term, stable, secure, and controllable intelligent body task execution.
In the [agent-scope](./agent-scope) directory, there are usage example projects of AgentScope2.0, where example projects start with `Axx-`
- [01. AgentScope Java 2.0 Introduction and Environment Setup](https://mp.weixin.qq.com/s/u4wERL0UXChPgvWQJpwurA)
## About
This project mainly provides basic example projects for Java AI application development to help everyone quickly get started and master basic knowledge points for large model application development and Agent development.
Since the project is positioned as an example project, it may have relatively less content on theoretical, conceptual, architectural design, and framework encapsulation implementation related to large model application development.
If you are interested in these topics, you can follow my WeChat official account: **One Grey Blog**, to get more content.

Connection Info
You Might Also Like
everything-claude-code
Complete Claude Code configuration collection - agents, skills, hooks,...
markitdown
MarkItDown-MCP is a lightweight server for converting URIs to Markdown.
firecrawl
Firecrawl MCP Server enables web scraping, crawling, and content extraction.
cc-switch
All-in-One Assistant for Claude Code, Codex & Gemini CLI across platforms.
servers
Model Context Protocol Servers
servers
Model Context Protocol Servers