Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/joshlong-attic/springone-2024-spring-ai
https://github.com/joshlong-attic/springone-2024-spring-ai
Last synced: 20 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/joshlong-attic/springone-2024-spring-ai
- Owner: joshlong-attic
- Created: 2024-08-23T23:08:04.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-08-28T20:14:02.000Z (5 months ago)
- Last Synced: 2024-08-29T22:15:28.802Z (5 months ago)
- Language: Java
- Size: 1.33 MB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# Bootiful Spring AI
by Dr. Mark Pollack, Dr. Rod Johnson, and Joshyou can find [Rod's code here](https://github.com/johnsonr/instrumented-rag)
https://chat.lmsys.org
* "hi, Spring fans!"
* DJ (~5 mins): officiate the project
* JVM devs are important to the future of AI.
* people are not going to switch to Python.
* Adding GenAI to existing applications with Spring AI is trivial. Want to add functions to your AI flow, woohoo! You've got a lot of valuable code in Spring already, and it's trivial to connect the model to your APIs.
* you should be excited about this!
* requires a different skill set to make apps useful than model builders and data scientists
* Spring's been around for a really, really long time.
* Portable Service Abstractions, AOP, DI, autoconfiguration
* DP (~5 mins):
* history of AI
* problems/solutions
* constraints inform architecture (microservices vs. team size, models vs. speed/intelligence)
* choose your model wisely (costs vs. speed/accuracy) "which one should we choose?"
* "vibe checks are all you need."
* https://chat.lmsys.org
* JL/DP:
* start.spring.io: `web`, `graalvm`, `jdbc`, `openai`, `pgvector`, `actuator`, `zipkin`, `docker compose`
* setup :
* API key
* remove _Docker Compose_ from `pom.xml`, specify `spring.datasource.*`, export the ports in `compose.yml`, `docker compose up -d`
* model
* _Spring AI M2_!
* DP/JL: introduce the `ChatClient` with a simple joke controller
* DP/JL: structured output (`Joke.class`)
* DP/JL: RAG
* DP/JL: Chat Memory
* DP/JL: functions (show getting the status of a purchase (a `Transaction`))
* DP/JL: observable AI: observability
* DP/JL: efficient AI: virtual threads and GraalVM