Məzmuna keç
AI ilə kod

RAG sadə dillə: AI sənin sənədlərini necə «oxuyur»

Embeddings, vektor axtarışı və cavablarda istinadlar — nümunələrlə.

HTMLLAB komandası · 9 dəq oxu

Model sənin şirkətinin sənədlərini bilmir. Onları hər dəfə tam göndərmək baha və yavaşdır. RAG (Retrieval-Augmented Generation) başqa yol təklif edir: əvvəl sualla bağlı hissələri tapırıq, sonra yalnız onları modelə veririk.

Addım 1: sənədləri hissələrə böl

Sənəd kiçik hissələrə (chunk) bölünür. Hissə çox böyük olsa, axtarış dəqiqliyini itirir; çox kiçik olsa, kontekst itir. Hər hissəyə mənbəni də yaz: sənədin adı və səhifəsi sonra cavabda istinad üçün lazım olacaq.

Addım 2: embeddings

Embedding mətni rəqəmlərdən ibarət vektora çevirir: mənaca yaxın mətnlərin vektorları da yaxın olur. Vektorları pgvector kimi bazada saxlayırıq.

Addım 3: axtarış və cavab

rag.ts
// Sualı vektora çeviririk
const vector = await embed(question);

// Bazadan ən yaxın 5 hissəni tapırıq
const chunks = await db.query(
  "SELECT text, source FROM chunks ORDER BY embedding <=> $1 LIMIT 5",
  [toSql(vector)],
);

// Modelə sualı kontekstlə birlikdə veririk
const answer = await ask(question, chunks);
Qeyd
Modelə açıq de: yalnız verilən mətnlərə əsaslan, cavab yoxdursa «bilmirəm» yaz və mənbəni göstər. Halüsinasiyaları azaldan ən sadə qayda budur.

Keyfiyyəti necə ölçmək olar

  • Real suallardan test dəsti hazırla
  • Lazımi hissənin tapılıb-tapılmadığını yoxla
  • Cavabın mənbəyə uyğunluğunu ölç
  • Hər dəyişiklikdən sonra testləri yenidən işə sal

AI Software Developer proqramında RAG ayrıca moduldur: Azərbaycan və rus dilində mənbə istinadları ilə sənədlər üzrə chat-bot qurursan.

#rag#embeddings#pgvector

Bunları da oxu