Add LangGraph and remove pseudocode

- LangGraph를 워크플로우 관리 도구로 추가
- 의사코드 제거 (실제 파일 참조로 대체)
- 구현 계획 섹션 간소화

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Claude-51124 2025-10-16 23:31:10 +09:00
parent 2e487401e5
commit aba4006975

View File

@ -232,33 +232,13 @@ if np.random.rand() < acceptance_ratio:
### 6.2 구현 계획
**새 스킬**: app/skills/startup_analysis_skill.py
```python
class StartupAnalysisSkill:
async def find_similar_companies(self, company_name: str):
"""Neo4j 기반 유사 기업 검색"""
# 1. 스타트업 데이터 로드
# 2. 태그 기반 필터링
# 3. 공통 태그 계산
# 4. Top 5 반환
**새 엔드포인트**: main.py에 /api/analyze/startup/{company_name} 추가
async def calculate_valuation(self, company_name: str):
"""Bayesian MCMC 가치평가"""
# 1. 유사 기업 수집
# 2. Prior/Likelihood 계산
# 3. MCMC 샘플링 (비동기)
# 4. Posterior 분석
# 5. 결과 반환
```
**새 엔드포인트**: main.py 추가
```python
@app.post("/api/analyze/startup/{company_name}")
async def analyze_startup(company_name: str):
skill = StartupAnalysisSkill()
similar = await skill.find_similar_companies(company_name)
valuation = await skill.calculate_valuation(company_name)
return {"similar": similar, "valuation": valuation}
```
**워크플로우 관리**: LangGraph
- 유사 기업 검색 → 가치평가 → 결과 생성의 순차적 흐름 관리
- 조건부 분기: 데이터 부족 시 대안 방법 자동 선택
- 상태 관리: 분석 진행 상황 추적 및 사용자 피드백
- 에러 처리: 각 단계별 실패 시 재시도 로직
### 6.3 기술적 고려사항
@ -274,10 +254,11 @@ async def analyze_startup(company_name: str):
- 응답 시간: MCMC 10-30초 소요 ("분석 중..." 메시지 필요)
- 계산 집약: MCMC 대신 사전 계산 결과 사용 고려
**대안**:
**구현 접근**:
- 경량화: networkx 그래프 (Neo4j 없이)
- 사전 계산: 주요 기업 가치평가 미리 저장
- 근사: MCMC 대신 Gaussian approximation
- 워크플로우: LangGraph로 복잡한 분석 흐름 관리
### 6.4 사용자 경험
@ -339,6 +320,7 @@ Robeing: [40초 후] "약 26억원 (95% 신뢰구간: -48~101억)으로 평가
- Python neo4j driver 6.0.2
- NumPy, SciPy: 통계 계산
- Matplotlib: 시각화
- LangGraph: 워크플로우 관리 및 상태 추적
---