From eef0477e9d20a59a7c7b2746cb23badf3debac93 Mon Sep 17 00:00:00 2001
From: ho jin chu <50796809+seedevk8s@users.noreply.github.com>
Date: Tue, 17 Jun 2025 23:22:35 +0900
Subject: [PATCH] Add files via upload
---
claude/spring_ai_tutorial_mermaid.mermaid | 130 ++++++++++++++++++++++
1 file changed, 130 insertions(+)
create mode 100644 claude/spring_ai_tutorial_mermaid.mermaid
diff --git a/claude/spring_ai_tutorial_mermaid.mermaid b/claude/spring_ai_tutorial_mermaid.mermaid
new file mode 100644
index 0000000..5de5809
--- /dev/null
+++ b/claude/spring_ai_tutorial_mermaid.mermaid
@@ -0,0 +1,130 @@
+graph TB
+ subgraph "Spring AI Tutorial 프로젝트"
+ direction TB
+
+ subgraph "Chapter 1: LLM 호출"
+ direction LR
+ C1E[chapter1_exercise
실습용 브랜치]
+ C1C[chapter1_completed
완성 코드 브랜치]
+
+ subgraph "Chapter 1 구성요소"
+ C1T[📚 이론
Spring AI 개념]
+ C1P[🛠 실습
OpenAI 연동]
+ C1API[OpenAI API]
+ C1Client[ChatClient]
+ end
+
+ C1E --> C1C
+ C1T --> C1P
+ C1P --> C1API
+ C1API --> C1Client
+ end
+
+ subgraph "Chapter 2: RAG 파이프라인"
+ direction LR
+ C2B[chapter2
브랜치]
+
+ subgraph "RAG 구성요소"
+ C2T[📚 이론
RAG 설계]
+ C2P1[🛠 실습1
Data Indexing]
+ C2P2[🛠 실습2
Retrieval & Generation]
+
+ subgraph "Data Pipeline"
+ DOC[Document Loader]
+ SPLIT[Text Splitter]
+ EMB[Embedding Client]
+ VECTOR[Vector Store]
+ end
+
+ subgraph "Query Pipeline"
+ QUERY[User Query]
+ SEARCH[Similarity Search]
+ CONTEXT[Context Retrieval]
+ GEN[Answer Generation]
+ end
+ end
+
+ C2B --> C2T
+ C2T --> C2P1
+ C2T --> C2P2
+ C2P1 --> DOC
+ DOC --> SPLIT
+ SPLIT --> EMB
+ EMB --> VECTOR
+ C2P2 --> QUERY
+ QUERY --> SEARCH
+ SEARCH --> CONTEXT
+ CONTEXT --> GEN
+ end
+
+ subgraph "Chapter 3: Storm OpenAPI"
+ direction LR
+ C3B[chapter3
브랜치]
+
+ subgraph "Storm 구성요소"
+ C3T[📚 이론
Storm 개념]
+ C3P[🛠 실습
초간단 챗봇]
+ C3API[Storm API]
+ C3BOT[Chatbot App]
+ end
+
+ C3B --> C3T
+ C3T --> C3P
+ C3P --> C3API
+ C3API --> C3BOT
+ end
+ end
+
+ subgraph "기술 스택"
+ direction TB
+ SPRING[Spring Boot 3.4.4]
+ KOTLIN[Kotlin 1.9.25]
+ SAI[Spring AI 1.0.0-M6]
+ JAVA[Java 17+]
+
+ SPRING --> SAI
+ KOTLIN --> SPRING
+ JAVA --> KOTLIN
+ end
+
+ subgraph "API 제공자"
+ direction TB
+ OPENAI[OpenAI]
+ STORM[Storm]
+ AZURE[Azure OpenAI]
+ OLLAMA[Ollama]
+
+ OPENAI -.-> C1Client
+ STORM -.-> C3API
+ end
+
+ subgraph "실행 환경"
+ direction TB
+ LOCAL[localhost:8080]
+ SWAGGER[Swagger UI
localhost:8080/swagger-ui.html]
+
+ LOCAL --> SWAGGER
+ end
+
+ subgraph "학습 흐름"
+ direction TB
+ START[시작] --> SETUP[환경 설정]
+ SETUP --> CH1[Chapter 1
기본 LLM 호출]
+ CH1 --> CH2[Chapter 2
RAG 시스템]
+ CH2 --> CH3[Chapter 3
Storm 연동]
+ CH3 --> COMPLETE[학습 완료]
+
+ style START fill:#e1f5fe
+ style CH1 fill:#f3e5f5
+ style CH2 fill:#e8f5e8
+ style CH3 fill:#fff3e0
+ style COMPLETE fill:#ffebee
+ end
+
+ classDef chapterBox fill:#f9f9f9,stroke:#333,stroke-width:2px
+ classDef techBox fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
+ classDef apiBox fill:#f1f8e9,stroke:#388e3c,stroke-width:2px
+
+ class C1E,C1C,C2B,C3B chapterBox
+ class SPRING,KOTLIN,SAI,JAVA techBox
+ class OPENAI,STORM,AZURE,OLLAMA apiBox
\ No newline at end of file