LangChain

ํ™ฉ์—ฐ์ค€ยท2024๋…„ 7์›” 17์ผ

์ถœ์ฒ˜ : https://www.youtube.com/watch?v=tQUtBR3K1TI&list=PLQIgLu3Wf-q_Ne8vv-ZXuJ4mztHJaQb_v&index=9

์‚ฌ์ „ ํ•™์Šต ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜๋ฉด ์ž„๋ฒ ๋”ฉ ํ•™์Šต์ด ๋”ฐ๋กœ ํ•„์š” ์—†๋‹ค.
Why? ๋Œ€๊ธฐ์—…์—์„œ ์ž˜ ํ•™์Šตํ•œ ๋ชจ๋ธ์„ ์‚ฌ์šฉ

Retrieval

Vector Store

  • Pure vector databases : CRUD ๊ธฐ๋Šฅ ์ œ๊ณต
  • Vector libraries : vector ์œ ์‚ฌ๋„ ๋น„๊ตํ•˜๊ธฐ ์šฉ์ด

๋ชจ๋ธ ์ข…๋ฅ˜

  • ๋กœ์ปฌ ์ž„๋ฒ ๋”ฉ ๋ชจ๋ธ ์ค‘์—๋Š” ko ๋ถ™์€๊ฒŒ ํ•œ๊ตญ์–ด ๋ณ€ํ™˜ ์ž˜ํ•ด์คŒ

๊ธฐํƒ€ ํ•„๊ธฐ

tiktoken : OpenAi gpt model์ด ์‚ฌ์šฉํ•˜๋Š” ํ† ํฐ ๋ฐฉ์‹.
len, tiktoken_len์œผ๋กœ ๊ฐ๊ฐ ์ฐ์–ด๋ณด๋ฉด ๊ธธ์ด๊ฐ€ ๋‹ค๋ฅธ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Œ
cl100k_base : gpt token์— ์“ฐ์ด๋Š” encoding

Split์„ ํ†ตํ•ด token ์ œํ•œ issue๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Œ.
๊ทธ๋ž˜์„œ gpt์˜ token ์ œํ•œ์€? ๋”ฐ๋กœ ๋งŒ๋“ค์–ด์ค˜์•ผ ํ•  ํ•„์š”๊ฐ€ ์žˆ์Œ
128,000

limit: 128k

Input Tokens: $5 per 1 million tokens (or $0.005 per 1,000 tokens).

Output Tokens: $15 per 1 million tokens (or $0.015 per 1,000 tokens).

์‚ฌ์ „ํ•™์Šต ๋ชจ๋ธ : ์ž„๋ฒ ๋”ฉ ํ•™์Šต์ด ๋”ฐ๋กœ ํ•„์š”์—†์Œ.

์œ ๋ฃŒ embedding model : Openai - ada, HuggingFace model

temperature์ด ๋‚ฎ์„ ์ˆ˜๋ก ์ผ๊ด€์„ฑ ์žˆ๋Š” ๋‹ต๋ณ€์ด ๋‚˜์˜ด.

Chain์˜ ์ข…๋ฅ˜

Stuff doucuments

ํ•œ ๋ฒˆ์— 4๊ฐœ๊ฐ€ ๋“ค์–ด๊ฐ€๊ธฐ ๋•Œ๋ฌธ์— api 1๋ฒˆ ํ˜ธ์ถœ๋กœ ๋‹ต์„ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค.

Map_reduce

map : ๊ฐ๊ฐ์„ ์š”์•ฝํ•˜๋Š” ๊ณผ์ •. (api ํ˜ธ์ถœ 4 + 1 = 5 ๋ฒˆ)
reduce : ์ตœ์ข…์ ์œผ๋กœ ์š”์•ฝํ•˜๋Š” ๊ณผ์ •

Refine

for ์ข‹์€ ํ’ˆ์งˆ์˜ ๋‹ต๋ณ€
์ค‘๊ฐ„ ๋‹ต๋ณ€์ด ๋“ค์–ด๊ฐ€๊ธฐ ๋•Œ๋ฌธ์— ๋” ๋†’์€ ํ’ˆ์งˆ์˜ ๋‹ต๋ณ€์„ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค.
์ž˜ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ์ด์œ  : ํ•˜๋‚˜์”ฉ ๋‹ต๋ณ€์ด ๋“ค์–ด๊ฐ€๊ธฐ ๋•Œ๋ฌธ์— Map_reduce์ฒ˜๋Ÿผ ๋ณ‘๋ ฌ์ ์ด์ง€ ๋ชปํ•˜๋‹ค. -> ์‹œ๊ฐ„์ด ๊ต‰์žฅํžˆ ์˜ค๋ž˜ ๊ฑธ๋ฆผ (์‹ ๋ขฐ๋„ ๋†’์€ ๋‹ต๋ณ€์„ ์›ํ•  ๋•Œ ์‚ฌ์šฉ)

Map re-rank

์‚ฌ์šฉ์ž ์งˆ๋ฌธ๊ณผ text chunk๋ฅผ ๋„ฃ์œผ๋ฉด answer ๋ฟ ๋งŒ ์•„๋‹ˆ๋ผ score๋„ ๋ฐ›๊ฒŒ๋จ.
if) 4๊ฐœ๊ฐ€ input์ด๋ฉด ๊ฐ€์žฅ score๊ฐ€ ๋†’์€ ๊ฒƒ์ด output์œผ๋กœ ๊ฒฐ์ •

TODO

KEYWORD๋กœ ์‹œ๋ฅผ ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ๋” (S3๋ฅผ ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ๋”)

ํ‚ค์›Œ๋“œ๊ธฐ๋ฐ˜์œผ๋กœ ์‹œ๋ฅผ ์กฐํšŒํ•ด์•ผํ•จ .
์‹œ๋ฅผ S3์—์„œ ์กฐํšŒํ•ด์„œ RAG๋ฅผ ํ†ตํ•ด์„œ ์‹œ, KEYWORD ๋ฐฑํ„ฐํ™” ์‹œ์ผœ์„œ vectorstore
vector db ํ•„์š”ํ•  ์ˆ˜๋„ ์žˆ์Œ
๋ชจ๋“  ์‹œ๋ฅผ vectorํ™” ์‹œ์ผœ์•ผํ•จ.

0๊ฐœ์˜ ๋Œ“๊ธ€