Sider.ai
  • Klepet
  • Wisebase
  • Orodja
  • Razširitev
  • Stranke
  • Cenitev
Prenesi zdaj
Vpiši se

Učite se hitreje, razmišljajte globlje in rastite pametneje s Sider.

Izdelki
Aplikacije
  • Razširitve
  • iOS
  • Android
  • Mac OS
  • Windows
Wisebase
  • Wisebase
  • Deep Research
  • Scholar Research
  • Math Solver
  • Rec NoteNew
  • Audio To Text
  • Gamified Learning
  • Interactive Reading
  • ChatPDF
Orodja
  • Ustvarjalec spletnih straniNew
  • AI DiapozitiviNew
  • AI pisec esejev
  • Nano Banana Pro
  • Nano Banana Infographic
  • AI generator slik
  • Italijanski generator možganske zmešnjave
  • Odstranjevalec ozadja
  • Menjalnik ozadja
  • Brisalo za fotografije
  • Odstranjevalec besedila
  • Inpaint
  • Povečevalnik slik
  • Ustvari
  • AI prevajalnik
  • Prevajalnik slik
  • PDF prevajalnik
Sider
  • Kontaktirajte nas
  • Center za pomoč
  • Prenesi
  • Cenik
  • Izobraževalni načrt
  • Kaj je novega
  • Blog
  • Skupnost
  • Partnerji
  • Partnerski program
  • Povabi
©2026 Vse pravice pridržane
Pogoji uporabe
Politika zasebnosti
  • Domača stran
  • Blog
  • AI Orodja
  • Kako uporabljati LlamaIndex: Praktičen vodnik od začetka do produkcije

Kako uporabljati LlamaIndex: Praktičen vodnik od začetka do produkcije

Posodobljeno 23. sep. 2025

10 min


Kako uporabljati : Praktičen vodnik od začetka do produkcije

Če ste kdaj poskusili zgraditi aplikacijo za generiranje z razširjenim pridobivanjem (RAG) in si mislili: »Zakaj je povezovanje vdelav, vektorskih shramb in pozivov tako zapleteno?«, niste edini. obstaja zato, da pospeši, uredi in pripravi to cevovodje za uporabo v produkciji. V tem praktičnem, na rešitve usmerjenem vodniku vas bomo vodili skozi celoten postopek uporabe – vnos podatkov, indeksiranje, poizvedovanje, ocenjevanje in uvajanje – da boste lahko poslali nekaj zanesljivega, ne da bi se izgubili v lepilni kodi.
Uporabili bomo strukturo, ki jo vodijo vprašanja, s progresivnimi koraki, izvedljivimi izrezki in praktičnimi nasveti iz resničnega sveta. Ne glede na to, ali prototipirate klepetalnega robota za interno dokumentacijo ali uvajate pomočnika za znanje za stranke, vam bo učinkovito učenje uporabe prihranilo dneve dela.
: je ogrodje, ki vam pomaga povezati vaše podatke z velikimi jezikovnimi modeli z orodji za indeksiranje, pridobivanje in orkestracijo – idealno za RAG, agente in strukturirane izhode.

Kaj je in zakaj ga uporabljati?

  • LlamaIndex je podatkovno ogrodje za aplikacije LLM. Zagotavlja gradnike za:
  • Vnos: Nalaganje datotek, spletnih strani, baz podatkov in API-jev.
  • Razčlenjevanje in indeksiranje: Spreminjanje surove vsebine v strukture, ki jih je mogoče poizvedovati (vektorski, ključni, grafični indeksi).
  • Pridobivanje: Pridobivanje konteksta s prilagodljivimi strategijami (BM25, hibridno, prerazvrščanje).
  • Poizvedovalniki in agenti: Sestavljanje pridobivanja, orodij in pozivov v koherentno izkušnjo QA.
  • Ocenjevanje in spremljanje: Ocenjevanje kakovosti pridobivanja in ustreznosti odgovorov.
  • Kdaj uporabiti <a1>LlamaIndex</a1>:
  • Želite robusten RAG sklad, ne da bi ponovno izumljali razčlenjevanje, vdelave in pridobivanje.
  • Morate združiti več virov podatkov (PDF-ji + Notion + SQL).
  • Želite eksperimentirati s hibridnim pridobivanjem, prerazvrščanjem ali strukturiranimi izhodi.
  • LlamaIndex pri učenju uporabe LlamaIndex:
  • Podatki → Vozlišča → Indeks → Pridobivalnik → Poizvedovalnik → Aplikacija

Hitri začetek: Minimalna RAG zanka

To je najhitrejša pot do delujočega prototipa. Naložili bomo dokumente, zgradili vektorski indeks in postavili vprašanja.
# 1) Namestitev
# pip install llama-index llama-index-embeddings-openai llama-index-llms-openai
import os
from llama_index.core import VectorStoreIndex, SimpleDirectoryReader
from llama_index.embeddings.openai import OpenAIEmbedding
from llama_index.llms.openai import OpenAI
# 2) Konfigurirajte svoj model + vdelave
os.environ["OPENAI_API_KEY"] = "YOUR_KEY" # ali uporabite katerega koli podprtega ponudnika LLM/vdelav
llm = OpenAI(model="gpt-4o-mini")
embed_model = OpenAIEmbedding(model="text-embedding-3-small")
# 3) Naložite dokumente (npr. ./data/*.pdf, .md, .txt)
docs = SimpleDirectoryReader("./data").load_data
# 4) Zgradite indeks
index = VectorStoreIndex.from_documents(docs, embed_model=embed_model)
# 5) Ustvarite poizvedovalnik in postavite vprašanje
query_engine = index.as_query_engine(llm=llm)
response = query_engine.query("Katere so ključne varnostne prakse, omenjene v dokumentih?")
print(response)
To je bistvo. Od tu naprej prave aplikacije dodajo boljše razčlenjevanje, prerazvrščanje, strukturirane pozive in opazovanje.

Vnos: Prinesite svoje podatke (BYOD) na pravi način

Ko se odločate, kako uporabljati za resnične podatke, izberite nalagalnike, ki ustrezajo vašim virom in ohranjajo strukturo.
  • Pogosti nalagalniki:
  • Datoteke: SimpleDirectoryReader, bralniki PDF/HTML/Markdown
  • Splet: BeautifulSoupWebReader, bralniki zemljevidov spletnega mesta
  • SaaS: Notion, Confluence, Slack, Google Drive (prek povezovalnikov)
  • Baze podatkov: SQL in vektorske baze podatkov (Pinecone, Weaviate, Chroma, Elasticsearch)
  • Nasvet: Normalizirajte metapodatke (naslov, avtor, URL, created_at). Dobri metapodatki pozneje izboljšajo prerazvrščanje in filtriranje.
from llama_index.core import SimpleDirectoryReader
from llama_index.readers.web import SimpleWebPageReader
file_docs = SimpleDirectoryReader("./policies").load_data
web_docs = SimpleWebPageReader(html_to_text=True).load_data
all_docs = file_docs + web_docs

Razčlenjevanje in razčlenjevalniki vozlišč: Smeti noter, smeti ven

Pravilno razčlenjevanje je eden najpomembnejših korakov pri učinkovitem učenju uporabe .
  • Zakaj je razčlenjevanje pomembno: Preveliko → napihovanje žetonov in nepomembno pridobivanje. Premajhno → fragmentacija konteksta.
  • Privzete vrednosti: Razumne za številne primere, vendar jih prilagodite svoji vrsti vsebine.
  • Hevristike:
  • Tehnična dokumentacija: 512–1024 žetonov z 10–20 % prekrivanjem.
  • Pogosta vprašanja: Manjši deli (256–512), da ohranite pare vprašanj/odgovorov nedotaknjene.
  • Pravno/Pravilnik: Večji deli (1024–1536) za ohranitev definicij + klavzul.
from llama_index.core.node_parser import SentenceSplitter
from llama_index.core import Document
parser = SentenceSplitter(chunk_size=800, chunk_overlap=100)
nodes = []
for d in all_docs:
nodes.extend(parser.get_nodes_from_documents([Document(text=d.text, metadata=d.metadata)]))

Indeksne strategije: Vektorske, ključne besede ali hibridne?

Izbira pravega indeksa je ključnega pomena. Dobra novica: vam omogoča, da jih kombinirate.
  • Vektorski indeks: Odličen za semantično iskanje. Najboljši za »razloži X« ali nejasne poizvedbe.
  • Ključna beseda (BM25): Močna za točne izraze, ID-je, kode napak, dnevnike.
  • Hibridni: Združite oboje; prerazvrstite najboljše kandidate z LLM ali navzkrižnim kodirnikom.
from llama_index.core import VectorStoreIndex, SummaryIndex
from llama_index.core.retrievers import BM25Retriever
from llama_index.core.query_engine import RetrieverQueryEngine
# Vektorski indeks iz predhodno razčlenjenih vozlišč
v_index = VectorStoreIndex(nodes)
# BM25 pridobivalnik ključnih besed
bm25_retriever = BM25Retriever.from_defaults(nodes=nodes, similarity_top_k=6)
# Hibridni: združite kandidate, nato prerazvrstite
from llama_index.core.retrievers import RouterRetriever
from llama_index.retrievers.merge import MergerRetriever
v_retriever = v_index.as_retriever(similarity_top_k=6)
hybrid = MergerRetriever(retrievers=[v_retriever, bm25_retriever], top_k=8)
query_engine = RetrieverQueryEngine.from_args(retriever=hybrid)

Prerazvrščanje in filtri: Povečajte natančnost brez preplačila

Prerazvrščanje izboljša kakovost odgovorov s preurejanjem pridobljenih delov glede na ustreznost.
  • Kdaj prerazvrstiti: Če uporabniki poročajo o neprimernih citatih ali dolgih, oblazinjenih kontekstih.
  • Pristopi:
  • Navzkrižni kodirniki (iskanje vdelave z dvo-kodirnikom → prerazvrstitev z navzkrižnim kodirnikom)
  • Prerazvrščanje na podlagi LLM (dražje, včasih pametnejše pri niansiranem besedilu)
  • Filtri metapodatkov (npr. source == 'handbook', created_at > 2024-01-01)
from llama_index.postprocessor.flag_embedding_reranker import FlagEmbeddingReranker
from llama_index.core.query_engine import RetrieverQueryEngine
reranker = FlagEmbeddingReranker(top_n=5, model="BAAI/bge-reranker-base")
query_engine = v_index.as_query_engine(
similarity_top_k=12,
node_postprocessors=[reranker]
)

Pozivanje in poizvedovalniki: Od iskanja do odgovorov

Poizvedovalnik je mesto, kjer se pridobivanje sreča z generiranjem. Za obvladovanje uporabe v produkciji natančno oblikujte pozive in sintezo odgovorov.
  • Sinteza odgovorov strategije:
  • Preprosto »stvari« (združevanje) za majhne kontekste
  • Drevo ali zmanjšanje zemljevida za daljše kontekste
  • Način citiranja za prikaz virov
from llama_index.core.response_synthesizers import get_response_synthesizer
from llama_index.core import ServiceContext
synth = get_response_synthesizer(response_mode="tree_summarize")
query_engine = v_index.as_query_engine(response_synthesizer=synth)
ans = query_engine.query("Povzemite korake uvajanja in navedite vire.")
print(ans)
  • Pozivi po meri: Prilagodite ton, strukturirane izhode ali varovala.
from llama_index.core.prompts import PromptTemplate
qa_tmpl = PromptTemplate(
"""
Ste jedrnat pomočnik, ki se najprej osredotoča na dokaze. Uporabite samo priloženi kontekst.
Če niste prepričani, recite, da ne veste. Vrnite JSON s ključi: odgovor, viri.
Vprašanje: {query_str}
Kontekst: {context_str}
"""
)
query_engine = v_index.as_query_engine(text_qa_template=qa_tmpl)

Agenti in orodja: Ko pridobivanje ni dovolj

Včasih odgovori zahtevajo dejanja: izvajanje SQL, klicanje API-jev ali brskanje. Agenti usklajujejo orodja in sklepanje z vašim cevovodom za pridobivanje.
  • Primeri uporabe: Nadzorne plošče KPI (orodje SQL), podporni roboti (API za iskanje vozovnic), raziskovalni agenti (splet + RAG).
from llama_index.core.agent import ReActAgent
from llama_index.tools.sql import SQLQueryEngineTool
from sqlalchemy import create_engine
engine = create_engine("sqlite:///analytics.db")
sql_tool = SQLQueryEngineTool.from_engine(engine)
agent = ReActAgent.from_tools([sql_tool], llm=llm, verbose=True)
agent.chat("Kakšno je bilo mesečno odtekanje v drugem četrtletju 2025? Če je potrebno, poizvedujte po bazi podatkov.")

Ocenjevanje: Ne pošiljajte na slepo

Odgovorno učenje uporabe pomeni potrditev pridobivanja in odgovorov pred uvedbo.
  • Ocenjevanje brez povezave: Ocenite priklic/natančnost pridobivanja na označenem naboru.
  • Spletno ocenjevanje: Beležite uporabniške pozive, merite zadovoljstvo, stopnje preusmeritve in halucinacije.
  • LlamaIndex: LlamaIndex ponuja pomočnike za ocenjevanje zanesljivosti in ustreznosti odgovorov.
from llama_index.core.evaluation import FaithfulnessEvaluator, RelevancyEvaluator
faith = FaithfulnessEvaluator(llm=llm)
rel = RelevancyEvaluator(llm=llm)
pred = query_engine.query("Navedite družine kontrol SOC 2 v našem pravilniku.")
print("zanesljivo?", faith.evaluate_response(pred))
print("ustrezno?", rel.evaluate_response(pred))
  • Praktična meja: Za interne pomočnike ciljajte na >80 % oceno »koristno« pri najboljših poizvedbah pred širšo uvedbo.

Vztrajnost in vektorske shrambe: Naj bo razširljivo

Indeksi, zgrajeni v pomnilniku, ne bodo zadostovali za resnične obremenitve. Shranite v vektorsko bazo podatkov in omogočite inkrementalne posodobitve.
  • Priljubljene zaledne storitve: Pinecone, Weaviate, Chroma, Elasticsearch/OpenSearch, Qdrant.
  • Nasvet: Uporabite imenske prostore na najemnika ali oddelek; ohranite bogate metapodatke.
# Primer: Chroma
# pip install chromadb llama-index-vector-stores-chroma
from llama_index.vector_stores.chroma import ChromaVectorStore
from llama_index.core import StorageContext
import chromadb
chroma_client = chromadb.PersistentClient(path="./chroma_store")
collection = chroma_client.get_or_create_collection("company_knowledge")
vector_store = ChromaVectorStore(chroma_collection=collection)
storage_context = StorageContext.from_defaults(vector_store=vector_store)
index = VectorStoreIndex.from_documents(all_docs, storage_context=storage_context)

Varnost in upravljanje: Del, ki ga vsi pozabijo

  • Obravnavanje PII: Redigirajte ali razpršite občutljiva polja med vnosom.
  • Nadzor dostopa: Filtrirajte po uporabniških vlogah z omejitvami metapodatkov.
  • Svežina vsebine: Načrtujte ponovni vnos; označite različice.
  • Varnost: Dodajte pravilnike o zavrnitvi in omejitve samo na vir v pozivih.
# Primer: filtriranje na podlagi metapodatkov v času poizvedbe
retriever = index.as_retriever(similarity_top_k=8)
retriever.metadata_filters = {"department": ["legal", "security"], "published": [True]}

Od prototipa do produkcije: Vzorci uvajanja

  • Vzorec strežnika: Izpostavite končno točko /query; ohranite indeks v pomnilniku.
  • Težava brez strežnika: Hladni zagoni + veliki modeli lahko škodijo zakasnitvi; razmislite o upravljanem sklepanju.
  • Predpomnjenje: Predpomnite vdelave in pogoste rezultate poizvedb; omogočite delne posodobitve.
  • Opazovanje: Beležite pridobljena vozlišča, uporabo žetonov, dolžino odgovora in povratne informacije uporabnikov.
# Minimalna ovojnica FastAPI
# pip install fastapi uvicorn
from fastapi import FastAPI
app = FastAPI
qe = index.as_query_engine(llm=llm)
@app.post("/query")
async def query(payload: dict):
q = payload.get("q", "")
resp = qe.query(q)
return {"answer": str(resp), "sources": [s.node.metadata for s in resp.source_nodes]}

Načrti iz resničnega sveta: Izberite svojo pot

  1. Interni pomočnik za pravilnike
  • Indeks: Hibridni (BM25 + vektorski) s prerazvrščanjem
  • Varovala: Način samo za vir; Rezerva »Ne vem«
  • KPI: Stopnja reševanja vprašanj o pravilnikih
  1. Kopilot za podporo strankam
  • Indeks: Dokumentacija o izdelku + opombe o izdaji + vozovnice
  • Agenti: Orodje API za preverjanje stanja naročila/vozovnice
  • KPI: Reševanje ob prvem stiku, preusmeritev, CSAT
  1. Raziskovalni analitik
  • Indeks: Splet + PDF-ji + opombe; močno odstranjevanje podvojenih vnosov
  • Prerazvrstitev: Navzkrižni kodirnik; sinteza: zmanjšanje zemljevida
  • KPI: Čas do vpogleda; natančnost citiranja
  1. QA podatkov za BI
  • Orodja: SQL pogon + RAG na definicijah metrik
  • Upravljanje: Pravilniki na ravni vrstic; revizija poizvedb
  • KPI: Pravilnost v primerjavi z resnico na terenu

Stroški in zakasnitev: Naj bo hitro (in poceni)

  • Vdelave: Serijsko obdelajte, kjer je to mogoče; uporabite manjše modele za priklic, selektivno prerazvrstite.
  • Velikost konteksta: Ciljajte na 1–2k žetonov najpomembnejših delov.
  • Predpomnjenje: Predpomnite priklic top-K za vroče poizvedbe; pomnite klice LLM s hashiranimi pozivi.
  • Paralelizem: Priklic z razvejanjem → prerazvrstitev z zbiranjem za zmanjšanje zakasnitve repa.

Pogoste pasti pri učenju uporabe

  • Prekomerno razčlenjevanje, ki vodi do plitvega, hrupnega pridobivanja
  • Brez filtrov metapodatkov, zaradi česar se prikradejo nepomembni viri
  • Zanašanje na eno samo vrsto indeksa za vso vsebino
  • Preskakovanje ocenjevanja; pošiljanje brez kakovostne meje
  • Puščanje zastarelih indeksov; brez načrtovane osvežitve

Mimogrede: Pospešitev poteka dela v urejevalniku

Ko ponavljate pozive, razčlenjevalnike in nastavitve pridobivanja, je vredno omeniti, da lahko stranska vrstica za kodiranje in raziskovanje AI, kot je Sider.ai, pospeši zanko. Lahko imate pri roki izrezke, pozive in opombe o ocenjevanju, ustvarjate razlike v spremembah pozivov in hitro preizkusite različice, ne da bi zapustili brskalnik. To je še posebej priročno, ko spreminjate način uporabe v različnih strategijah pridobivanja.

Kontrolni seznam po korakih: Od začetka do produkcije

  • Vnesite vire in normalizirajte metapodatke
  • Prilagodite velikosti delov glede na vrsto vsebine
  • Zgradite vektorske indekse + BM25; omogočite hibridno pridobivanje
  • Dodajte prerazvrščanje in filtre metapodatkov
  • Prilagodite pozive; omogočite citate in pravilnik o zavrnitvi
  • Ocenite zanesljivost in ustreznost na testnem naboru
  • Shranite v vektorsko shrambo; omogočite inkrementalne posodobitve
  • Dodajte opazovanje, predpomnjenje in filtre RBAC
  • Zavijte v API in nastavite SLA-je; dokumentirajte načine odpovedi

Ključni zaključki

  • Če želite robustno aplikacijo RAG, vam bo učenje uporabe prihranilo tedne inženiringa lepljenja.
  • Začnite preprosto, nato pa dodajte hibridno pridobivanje, prerazvrščanje in strukturirane pozive.
  • Ocenite, preden razširite; shranite indekse in spremljajte kakovost v produkciji.
  • Oblikujte za upravljanje že od prvega dne – varnost ni dodatek.

Naslednji koraki

  • Prototipirajte hiter začetek na majhnem naboru dokumentov.
  • Eksperimentirajte s hibridnim pridobivanjem in prerazvrščevalnikom.
  • Dodajte ocenjevanje in citate; spremljajte metrike kakovosti.
  • Premaknite se v trajno vektorsko shrambo in uvedite API.

Pogosta vprašanja

V1: Za kaj se uporablja v aplikacijah RAG? vam pomaga povezati vaše podatke z LLM-ji s komponentami za vnos, indeksiranje in pridobivanje. Poenostavlja gradnjo sistemov RAG z obravnavo razčlenjevanja, vektorskih/ključnih indeksov in orkestracije poizvedb.
V2: Kako izberem pravo vrsto indeksa v ? Uporabite vektorski indeks za semantične poizvedbe, BM25 za točna ujemanja, kot so ID-ji ali kode, in hibridni pristop za najboljši splošni priklic in natančnost. Številne ekipe združujejo oboje in dodajo prerazvrščanje za najboljše rezultate top-K.
V3: Kako lahko izboljšam natančnost pri uporabi LlamaIndex? Prilagodite velikosti delov besedila (chunks), vključite bogate metapodatke, omogočite hibridno pridobivanje (hybrid retrieval) in dodajte prerazvrščevalnik (reranker). Implementirajte tudi ocenjevanje zanesljivosti (faithfulness) in relevantnosti ter uporabite način citiranja (citation mode) za prikaz virov.
V4: Ali lahko LlamaIndex deluje z mojo obstoječo vektorsko bazo podatkov? Da. LlamaIndex se integrira s priljubljenimi vektorskimi bazami podatkov, kot so Pinecone, Weaviate, Chroma, Qdrant in Elasticsearch. Za razširljivost in inkrementalne posodobitve shranjujte indekse.
V5: Kako lahko aplikacijo LlamaIndex uvedem v produkcijsko okolje? Zavijte svoj pogon za poizvedbe (query engine) v API (npr. FastAPI), shranjujte podatke v vektorski bazi podatkov, dodajte predpomnjenje (caching) in opazovalnost (observability) ter nenehno ocenjujte kakovost. Za varnost uveljavite filtre metapodatkov in nadzor dostopa.

Novi članki
Kako obvladati ChatPDF: Hitrejši vpogledi v obsežne dokumente

Kako obvladati ChatPDF: Hitrejši vpogledi v obsežne dokumente

Najboljša alternativa X samodejnemu prevajanju za hitre in natančne dokumente

Najboljša alternativa X samodejnemu prevajanju za hitre in natančne dokumente

Samsung AI prevajanje ni na voljo v Iranu? Praktične rešitve

Samsung AI prevajanje ni na voljo v Iranu? Praktične rešitve

Orodja za prevajanje v perzijski jezik: praktičen vodnik za hitrejše in natančno delo

Orodja za prevajanje v perzijski jezik: praktičen vodnik za hitrejše in natančno delo

Najboljša alternativa Groku za poglobljene, citirane raziskave

Najboljša alternativa Groku za poglobljene, citirane raziskave

Top 15 funkcij generatorja slik z umetno inteligenco, ki jih boste dejansko uporabljali

Top 15 funkcij generatorja slik z umetno inteligenco, ki jih boste dejansko uporabljali