Skip to content

πŸ¦œπŸ’¬ μ±„νŒ… μΈν„°νŽ˜μ΄μŠ€λ₯Ό 톡해 λͺ¨λ“  LangGraph μ—μ΄μ „νŠΈμ™€ μƒν˜Έμž‘μš©ν•  수 μžˆλŠ” μ›Ή μ•± ν…œν”Œλ¦Ώ

License

Notifications You must be signed in to change notification settings

teddynote-lab/langgraph-platform-webapp

Β 
Β 

Repository files navigation

πŸ–₯️ LangGraph Platform WebApp

LangGraph Platform WebApp 은 messages ν‚€λ₯Ό κ°€μ§„ λͺ¨λ“  LangGraph μ„œλ²„μ™€ μ±„νŒ… μΈν„°νŽ˜μ΄μŠ€λ₯Ό 톡해 λŒ€ν™”ν•  수 μžˆλŠ” Next.js μ• ν”Œλ¦¬μΌ€μ΄μ…˜μž…λ‹ˆλ‹€.

Note

LangGraph Platform WebApp 은 LangGraph 의 곡식 ν…œν”Œλ¦ΏμΈ Agent Chat UI 의 포크 λ²„μ „μž…λ‹ˆλ‹€.

πŸ”₯ κΈ°μ‘΄ Agent Chat UI 와 λ‹€λ₯Έ 점

  • .env μ—μ„œ 둜고 이미지, 타이틀 μ„€μ • κ°€λŠ₯
  • Vision Model 을 μœ„ν•œ 이미지 파일 μ—…λ‘œλ“œ κΈ°λŠ₯ μΆ”κ°€ (λ³Έ Repo λŠ” PR λŒ€κΈ°μ€‘)
  • μ‚¬μš©μž 별 μ“°λ ˆλ“œ ꡬ뢄 (LocalStorage 둜 UserID 관리)
  • UI ν…μŠ€νŠΈ ν•œκ΅­μ–΄ λ²ˆμ—­

μ„€μ •

Note

πŸŽ₯ μ„€μ • κ°€μ΄λ“œ λΉ„λ””μ˜€λ₯Ό μ—¬κΈ°μ—μ„œ μ‹œμ²­ν•˜μ„Έμš”.

λ¨Όμ € μ €μž₯μ†Œλ₯Ό Clone ν•˜κ±°λ‚˜ Use this Template ν˜Ήμ€ npx λͺ…λ Ήμ–΄λ₯Ό μ‹€ν–‰ν•˜μ„Έμš”:

npx create-agent-chat-app

λ˜λŠ”

git clone https://github.com/langchain-ai/agent-chat-ui.git

cd agent-chat-ui

μ˜μ‘΄μ„± μ„€μΉ˜:

npm install

or

yarn

or

pnpm install

μ•± μ‹€ν–‰:

npm run dev

or

yarn dev

or

pnpm dev

앱은 http://localhost:3000μ—μ„œ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

πŸ’ μ‚¬μš©λ²•

앱이 μ‹€ν–‰λ˜λ©΄ λ‹€μŒ 정보λ₯Ό μž…λ ₯ν•˜λΌλŠ” λ©”μ‹œμ§€κ°€ ν‘œμ‹œλ©λ‹ˆλ‹€:

  • Deployment URL: λŒ€ν™”ν•˜κ³  싢은 LangGraph μ„œλ²„μ˜ URLμž…λ‹ˆλ‹€. μ΄λŠ” ν”„λ‘œλ•μ…˜ λ˜λŠ” 개발 URL일 수 μžˆμŠ΅λ‹ˆλ‹€.
  • Assistant/Graph ID: μ±„νŒ… μΈν„°νŽ˜μ΄μŠ€λ₯Ό 톡해 싀행을 κ°€μ Έμ˜€κ³  μ œμΆœν•  λ•Œ μ‚¬μš©ν•  κ·Έλž˜ν”„μ˜ 이름 λ˜λŠ” μ–΄μ‹œμŠ€ν„΄νŠΈμ˜ IDμž…λ‹ˆλ‹€.
  • LangSmith API ν‚€: (배포된 LangGraph μ„œλ²„μ— μ—°κ²°ν•  λ•Œλ§Œ ν•„μš”) LangGraph μ„œλ²„λ‘œ μ „μ†‘λœ μš”μ²­μ„ 인증할 λ•Œ μ‚¬μš©ν•  LangSmith API ν‚€μž…λ‹ˆλ‹€.

μ΄λŸ¬ν•œ 값을 μž…λ ₯ν•œ ν›„ Continueλ₯Ό ν΄λ¦­ν•˜μ„Έμš”. 그러면 LangGraph μ„œλ²„μ™€ μ±„νŒ…μ„ μ‹œμž‘ν•  수 μžˆλŠ” μ±„νŒ…μ°½μœΌλ‘œ μ΄λ™ν•©λ‹ˆλ‹€.

βš™οΈ ν™˜κ²½ λ³€μˆ˜

λ‹€μŒ ν™˜κ²½ λ³€μˆ˜λ₯Ό μ„€μ •ν•˜μ—¬ 초기 μž…λ ₯값을 μš°νšŒν•  수 μžˆμŠ΅λ‹ˆλ‹€:

NEXT_PUBLIC_API_URL=http://localhost:2024
NEXT_PUBLIC_ASSISTANT_ID=agent

Tip

ν”„λ‘œλ•μ…˜ LangGraph μ„œλ²„μ— μ—°κ²°ν•˜λ €λ©΄ ν”„λ‘œλ•μ…˜μœΌλ‘œ μ „ν™˜ μ„Ήμ…˜μ„ μ½μ–΄λ³΄μ„Έμš”.

μ΄λŸ¬ν•œ λ³€μˆ˜λ₯Ό μ‚¬μš©ν•˜λ €λ©΄:

  1. .env.example νŒŒμΌμ„ .envλΌλŠ” μƒˆ 파일둜 λ³΅μ‚¬ν•˜μ„Έμš”
  2. .env νŒŒμΌμ— 값을 μž…λ ₯ν•˜μ„Έμš”
  3. μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ λ‹€μ‹œ μ‹œμž‘ν•˜μ„Έμš”

μ΄λŸ¬ν•œ ν™˜κ²½ λ³€μˆ˜κ°€ μ„€μ •λ˜λ©΄ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ€ 초기 μž…λ ₯κ°’ λŒ€μ‹  이 λ³€μˆ˜λ“€μ„ μ‚¬μš©ν•©λ‹ˆλ‹€.

# .env

# LangGraph API URL
NEXT_PUBLIC_API_URL=http://localhost:2024
# LangGraph Graph or Assistant ID
NEXT_PUBLIC_ASSISTANT_ID=agent
# μ•± 이름
NEXT_PUBLIC_APP_NAME=teddynote LAB
# μ•± 둜고
NEXT_PUBLIC_APP_LOGO=/teddynote-logo.png
LANGSMITH_API_KEY=

🎨 μ•± 둜고 μ»€μŠ€ν…€

  1. /public 폴더에 μ›ν•˜λŠ” 둜고 이미지 νŒŒμΌμ„ μ²¨λΆ€ν•©λ‹ˆλ‹€.
  2. .env 의 NEXT_PUBLIC_APP_LOGO λ₯Ό μˆ˜μ •ν•©λ‹ˆλ‹€.

🚜 ν”„λ‘œλ•μ…˜ 배포

이미 Next.js ν”„λ‘œμ νŠΈμ— μ΅μˆ™ν•˜μ‹  뢄듀은 Agent Chat UI 의 κ°€μ΄λ“œ λ₯Ό μ°Έκ³ ν•˜μ„Έμš”

Next.js 에 μ΅μˆ™ν•˜μ§€ μ•ŠμœΌμ‹  뢄듀은 μ•„λž˜ κ°€μ΄λ“œλ₯Ό μ°Έκ³ ν•΄μ£Όμ„Έμš”

Vercel 둜 3λΆ„ μ•ˆμ— λ°°ν¬ν•˜κΈ°

Warning

Vercel Hobbyλ₯Ό μ‚¬μš©ν•˜λŠ” 경우, Vercel의 μ œν•œμœΌλ‘œ 인해 λ©”μ‹œμ§€κ°€ 잘릴 수 μžˆμŠ΅λ‹ˆλ‹€.

  1. 이 Repository λ₯Ό 클둠 or Use this Template 을 톡해, 본인의 Repository 둜 생성
  2. ν•΄λ‹Ή Repo λ₯Ό Vercel νŽ˜μ΄μ§€ μ—μ„œ κΆŒν•œ λΆ€μ—¬ν•΄μ„œ κ°€μ Έμ˜€κΈ°
  3. ν•΄λ‹Ή Repo λ₯Ό Import λ²„νŠΌ λˆ„λ₯΄κ³  ν™˜κ²½λ³€μˆ˜ μž…λ ₯ ν›„ > Deploy λ²„νŠΌ 클릭
  4. 배포 μ™„λ£Œ

(μΆ”κ°€) μ»€μŠ€ν…€ 도메인 μ—°κ²°

  1. μœ„μ˜ 배포 μ™„λ£Œ ν™”λ©΄μ—μ„œ Add Domain λ²„νŠΌμ„ λˆ„λ₯΄κ±°λ‚˜ Project Settings > Domains > Add λ₯Ό 톡해 ν•΄λ‹Ή ν™”λ©΄ μ§„μž… Domain μž…λ ₯칸에 μ›ν•˜λŠ” 도메인 μž…λ ₯ (ex. www.teddynote.com) ν›„ Add Domain λ²„νŠΌ 클릭
  2. 아직 도메인 λΌμš°νŒ… ν…Œμ΄λΈ” 섀정이 μ•ˆλ˜μ—ˆκΈ° λ•Œλ¬Έμ— Invalid Configuration μ—λŸ¬ λ°œμƒ
  3. DNS ν…Œμ΄λΈ”μ— CNAME μΆ”κ°€ (κ°€λΉ„μ•„, namecheap λ“± DNS ν˜ΈμŠ€νŒ… μ‚¬μ΄νŠΈμ—λŠ” λͺ¨λ‘ 이 κΈ°λŠ₯이 μžˆμŠ΅λ‹ˆλ‹€)
  4. μΆ”κ°€ ν›„ 기닀리면 μžλ™μœΌλ‘œ μ»€μŠ€ν…€ 도메인 μ—°κ²° + https μ„€μ •

License

MIT License

About

πŸ¦œπŸ’¬ μ±„νŒ… μΈν„°νŽ˜μ΄μŠ€λ₯Ό 톡해 λͺ¨λ“  LangGraph μ—μ΄μ „νŠΈμ™€ μƒν˜Έμž‘μš©ν•  수 μžˆλŠ” μ›Ή μ•± ν…œν”Œλ¦Ώ

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 84.9%
  • JavaScript 12.0%
  • CSS 3.1%