Update: 검색 구현을 RAG 스킬로 변경
- SearchService → RAG 스킬로 재명명 - rb8001/app/skills/rag.py로 구현 위치 변경 - 웹 검색 + 파일 RAG 통합 처리 방향 명시 - services/와 skills/ 구분: 영구 내부 vs 잠재적 독립
This commit is contained in:
parent
a15415b623
commit
e793b4b31f
@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
**작성일**: 2025-09-09
|
**작성일**: 2025-09-09
|
||||||
**작성자**: happybell80 & Claude
|
**작성자**: happybell80 & Claude
|
||||||
**관련 서비스**: rb8001 (SearchService 내부 구현)
|
**관련 서비스**: rb8001 (RAG 스킬 내부 구현)
|
||||||
**핵심 기술**: Multi-provider Search API, Query Routing, Caching
|
**핵심 기술**: Multi-provider Search API, Query Routing, Caching, RAG
|
||||||
|
|
||||||
## 1. 검색 프로바이더 계층 구조
|
## 1. 검색 프로바이더 계층 구조
|
||||||
|
|
||||||
@ -25,7 +25,7 @@
|
|||||||
검색 의도 추가: LLM 프롬프트에 "검색 요청은 /search로" 또는 직접 패턴 매칭.
|
검색 의도 추가: LLM 프롬프트에 "검색 요청은 /search로" 또는 직접 패턴 매칭.
|
||||||
|
|
||||||
```python
|
```python
|
||||||
# rb8001/app/services/search_service.py
|
# rb8001/app/skills/rag.py
|
||||||
def route_by_pattern(query):
|
def route_by_pattern(query):
|
||||||
if "뉴스" in query: return 'news_api'
|
if "뉴스" in query: return 'news_api'
|
||||||
if "언제" in query: return 'duckduckgo' # 즉답
|
if "언제" in query: return 'duckduckgo' # 즉답
|
||||||
@ -35,7 +35,7 @@ def route_by_pattern(query):
|
|||||||
## 3. 구현 아키텍처
|
## 3. 구현 아키텍처
|
||||||
|
|
||||||
```
|
```
|
||||||
사용자 → rb8001 내부 SearchService
|
사용자 → rb8001 내부 RAG 스킬
|
||||||
↓
|
↓
|
||||||
[Query Router]
|
[Query Router]
|
||||||
↓
|
↓
|
||||||
@ -66,12 +66,13 @@ Tavily Brave Serper DuckDuckGo
|
|||||||
|
|
||||||
### 예상 월 비용: $0.05
|
### 예상 월 비용: $0.05
|
||||||
|
|
||||||
## 6. 구현 위치: rb8001/app/services/search_service.py
|
## 6. 구현 위치: rb8001/app/skills/rag.py
|
||||||
|
|
||||||
별도 스킬 서비스 대신 rb8001 내부 SearchService로 구현
|
별도 마이크로서비스 대신 rb8001 내부 RAG 스킬로 구현
|
||||||
- 의도 분류 후 직접 처리 (네트워크 홉 감소)
|
- 웹 검색 + 파일 RAG 통합 처리
|
||||||
- Phase 1: Tavily + DuckDuckGo 통합
|
- Phase 1: Tavily + DuckDuckGo 웹 검색
|
||||||
- Phase 2: 복잡도 증가 시 skill-search 분리 검토
|
- Phase 2: ChromaDB 파일 검색 통합
|
||||||
|
- Phase 3: 복잡도 증가 시 skill-rag 분리
|
||||||
|
|
||||||
## 7. 핵심 차별점
|
## 7. 핵심 차별점
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user