stub LlamaIndex: Serlêdanên LLM-ya xwe bi Daneyên Xweser re bi hêsanî zêde bikin - Unite.AI
Girêdana bi me

Îstîxbaratê ya sûnî

LlamaIndex: Serlêdanên LLM-a xwe bi Daneyên Xweser re bi hêsanî zêde bikin

mm
Demê on
CallIndex

Modelên zimanên mezin (LLM) yên mîna rêzika GPT ya OpenAI-ê li ser cûrbecûr daneyên gihîştî yên gelemperî hatine perwerde kirin, di hilberîna nivîsê, kurtkirin, bersivdana pirs û plansaziyê de kapasîteyên berbiçav destnîşan dikin. Tevî pirrengiya wan, pirsek ku pir caran tête kirin li dora yekbûna bêkêmasî ya van modelan bi daneyên xwerû, nepenî an xwedanî re dizivire.

Karsaz û kes bi daneyên yekta û xwerû têne dagirtin, ku pir caran di serîlêdanên cihêreng ên wekî Notion, Slack, û Salesforce de têne bicîh kirin, an di pelên kesane de têne hilanîn. Ji bo ku LLM-yên ji bo vê daneya taybetî bikar bînin, gelek metodolojî hatine pêşniyar kirin û ceribandin.

Fine-tuning nêzîkatiyek weha temsîl dike, ew verastkirina giraniya modelê pêk tîne da ku zanyariyên ji danehevên taybetî tevde bike. Lêbelê, ev pêvajo bêyî dijwariyên wê nabe. Ew di amadekirina daneyê de hewildanek girîng hewce dike, digel pêvajoyek xweşbîniyê ya dijwar, ku astek pisporiya fêrbûna makîneyê hewce dike. Wekî din, bandorên darayî dikarin girîng bin, nemaze dema ku bi daneyên mezin re mijûl dibin.

Fêrbûna nav-çerçoveyê wekî alternatîfek derketiye holê, pêşî li çêkirina derdan û teşwîqan digire da ku ji LLM re çarçoveyek hewce peyda bike ji bo hilberîna encamên rast. Ev nêzîkatî hewcedariya ji nû ve perwerdekirina modela berfereh kêm dike, ji bo yekkirina daneyên taybet rêgezek bikêrtir û gihîştî peyda dike.

Lê kêmasiya vê yekê pêbaweriya wê li ser jêhatîbûn û pisporiya bikarhêner e endezyariya bilez. Wekî din, fêrbûna nav-çerçoveyê dibe ku her gav ne bi qasî rêziknameyê rast an pêbawer be, nemaze dema ku bi daneyên pir pispor an teknîkî re mijûl dibin. Pêş-perwerdeya modelê ya li ser cûrbecûr nivîsarên înternetê têgihîştina jargon an çarçoveyek taybetî garantî nake, ku dikare bibe sedema derketinên nerast an negirêdayî. Ev bi taybetî pirsgirêk e dema ku daneyên taybet ji domanek an pîşesaziyê ye.

Digel vê yekê, mêjera çarçoweya ku dikare di yek gavê de were peyda kirin tixûbdar e, û performansa LLM dibe ku her ku tevliheviya peywirê zêde dibe xirab bibe. Di heman demê de dijwariya nepenî û ewlehiya daneyê jî heye, ji ber ku agahdariya ku di bilez de hatî peyda kirin dibe ku hesas an nepenî be.

Dema ku civak van teknîkan dikole, amûrên mîna CallIndex niha balê dikişînin.

Indeksa Llama

Indeksa Llama

Ew dest pê kir Jerry Liu, zanyarê lêkolînê yê berê yê Uber. Dema ku payîza paşîn li dora GPT-3 ceriband, Liu sînorên modelê yên di derbarê hilgirtina daneyên taybet de, wek pelên kesane, dît. Vê çavdêriyê bû sedema destpêkirina projeya çavkaniya vekirî LlamaIndex.

Înîsiyatîfê veberhêneran kişandiye, ewlehiyê 8.5 mîlyon $ di dorhêlek fînansa tovê ya dawî de.

LlamaIndex zêdekirina LLM-an bi daneyên xwerû hêsan dike, valahiya di navbera modelên pêş-perwerdekirî û dozên karanîna daneya xwerû de pir dike. Bi navgîniya LlamaIndex, bikarhêner dikarin daneyên xwe bi LLM-an re bişopînin, hilberîna zanyariyê vekin û bi têgihiştinên kesane re bihizirin.

Bikarhêner dikarin LLM-ê bi daneyên xwe bi rengek bêkêmasî peyda bikin, hawîrdorek ku hilberîna zanînê û raman bi kûrahî kesane û têgihîştî pêşve bibin. LlamaIndex hûrguliyên fêrbûna hundurîn destnîşan dike bi peydakirina platformek bikarhêner-hevaltir û ewledartir ji bo danûstendina daneyê, piştrast dike ku tewra yên ku xwedan pisporiya fêrbûna makîneya tixûbdar in jî dikarin bi daneyên xwe yên taybet re potansiyela tevahî ya LLM-an bi kar bînin.

Têgînên Asta Bilind & Hin Nêrîn

1. Retrieval Augmented Generation (RAG):

LlamaIndex RAG

LlamaIndex RAG

RAG pêvajoyek du-qatî ye ku ji bo LLM-an bi daneyên xwerû re têkildar dike, bi vî rengî kapasîteya modelê zêde dike ku bersivên rast û agahdartir peyda bike. Pêvajo pêk tê:

  • Qonaxa Indekskirinê: Ev qonaxa amadekariyê ye ku zemîna çêkirina bingeha zanînê tê danîn.
LlamaIndex INDEXES

LlamaIndex Indexing

  • Qonaxa Lêpirsînê: Li vir, bingeha zanînê ji bo çarçoveyek têkildar tê şopandin da ku di bersiva pirsan de alîkariya LLM bike.
LlamaIndex QUERY QONAXA

LlamaIndex Query Stage

Rêwîtiya Indekskirina bi LlamaIndex:

  • Girêdanên Daneyan: Girêdanên daneyê wekî pasaporta daneya xwe ya ji LlamaIndex re bifikirin. Ew di îtxalkirina daneyan ji çavkanî û formên cihêreng de dibin alîkar, wan di nav temsîlek 'Belge' ya hêsan de vedihewînin. Girêdanên daneyê dikarin di hundurê LlamaHub de, depoyek çavkaniyek vekirî ya ku bi barkerên daneyê dagirtî ye, were dîtin. Van barkeran ji bo entegrasyona hêsan têne çêkirin, ku bi her serîlêdana LlamaIndex re ezmûnek pêve-û-lîstinê pêk tîne.
Llama hub

Navenda LlamaIndex (https://llamahub.ai/)

  • Belge / Nod: Belgeyek mîna valîzek gelemperî ye ku dikare cûrbecûr cûrbecûr daneyan bigire - ew PDF, derketinek API, an navnîşên databasê be. Ji hêla din ve, Node perçeyek an "qirçek" ji Belgeyekê ye, ku bi metadata û têkiliyên bi girêkên din re dewlemendkirî ye, ji bo paşdegirtina daneya rastîn bingehek zexm peyda dike.
  • Indeksên Daneyên: Veguheztina daneyan bişînin, LlamaIndex di navnîşkirina van daneyan de di nav formatek vegerandî de dibe alîkar. Li pişt perdeyan, ew belgeyên xav di nav temsîlên navîn de vediqetîne, vektorên vektorî hesab dike, û metadata derdixe. Di nav indexan de, 'VectorStoreIndex' bi gelemperî bijare ye.

Cureyên Indeksên di LlamaIndex de: Mifteya Daneyên Organîzekirî

LlamaIndex cûrbecûr navnîşan pêşkêşî dike, her yek ji bo hewcedariyên cûda û rewşên karanîna. Wekî ku li jor hatî nîqaş kirin, di bingeha van nîşanan de "girêk" hene. Ka em hewl bidin ku bi mekanîka û sepanên wan nîşaneyên LlamaIndex fam bikin.

1. Index navnîş bikin:

  • Mekanîk: Indeksa Lîsteyê girêkan bi rêz wek lîsteyek rêz dike. Daneyên têketinê di nav girêkan de dabeş dikin, ew bi şêwazek xêzik têne rêz kirin, amade ne ku bi dû hev an jî bi navgîniya peyvên sereke an binavkirinê ve werin pirsîn.
  • Berjewendî: Dema ku hewcedarî lêpirsîna li pey hev be, ev celeb nîşanek dibiriqe. LlamaIndex karanîna tevahiya daneya têketina we piştrast dike, tewra ku ew ji sînorê nîşana LLM-ê derbas bike jî, bi biaqilî pirsiyarkirina nivîsê ji her girêk û safîkirina bersivan dema ku ew di navnîşê de rêve dibe.

2. Vector Store Indeksa:

  • Mekanîk: Li vir, girêkan vediguherînin vektorên vektorî, yên ku li herêmî an jî di databasek vektorî ya taybetî de têne hilanîn. Milvus. Dema ku tê pirsîn, ew top_k girêkên herî dişibin hev tîne, wan digihîne sentezkera bersivê.
  • Berjewendî: Ger xebata we bi berhevoka nivîsê ve ji bo wekheviya semantîkî bi lêgerîna vektor ve girêdayî ye, ev index dikare were bikar anîn.

3. Indeksa Darê:

  • Mekanîk: Di Indeksa Darekê de, daneya têketinê di nav avahiyek darê de çêdibe, ku ji girêkên pelan ji jêr ber bi jor ve hatî çêkirin (perçeyên daneya orîjînal). Girêkên dêûbav wekî kurteyên girêkên pelan derdikevin, ku bi karanîna GPT-ê têne çêkirin. Di dema pirsekê de, nîşana darê dikare ji girêka kokê berbi girêkên pelan ve biherike an rasterast ji girêkên pelên hilbijartî bersivan ava bike.
  • Berjewendî: Bi Indeksa Darê re, pirskirina perçeyên nivîsê yên dirêj bikêrtir dibe, û derxistina agahdarî ji beşên nivîsê yên cihêreng hêsan dibe.

4. Indeksa Keyword:

  • Mekanîk: Nexşeya peyvên sereke ji bo girêkan bingeha Indeksa Peyva Keyeyê pêk tîne. Dema ku tê pirsîn, peyvên sereke ji pirsê têne derxistin, û tenê girêkên nexşandî têne ber çavan.
  • Berjewendî: Dema ku we pirsek bikarhênerek zelal hebe, Indeksa Keyword dikare were bikar anîn. Mînakî, şopandina belgeyên lênihêrîna tenduristî dema ku tenê li ser belgeyên têkildar ên COVID-19 zeft bikin bikêrtir dibe.

Sazkirina LlamaIndex

Sazkirina LlamaIndex pêvajoyek rasterast e. Hûn dikarin hilbijêrin ku wê rasterast ji Pip an jî ji çavkaniyê saz bikin. (Piştrast bikin ku python di pergala we de hatî saz kirin an jî hûn dikarin Google Colab bikar bînin)

1. Sazkirin ji Pip:

  • Fermana jêrîn bicih bikin:
    pip install llama-index
  • Not: Di dema sazkirinê de, LlamaIndex dibe ku pelên herêmî ji bo hin pakêtên mîna NLTK û HuggingFace dakêşîne û hilîne. Ji bo diyarkirina pelrêçek ji bo van pelan, guhêrbara jîngehê "LLAMA_INDEX_CACHE_DIR" bikar bînin.

2. Sazkirin ji Çavkanî:

  • Pêşîn, depoya LlamaIndex ji GitHub klon bikin:
    git clone https://github.com/jerryjliu/llama_index.git
  • Piştî ku klon kirin, li pelrêça projeyê bigerin.
  • Ji bo birêvebirina girêdanên pakêtê hûn ê hewceyê Helbestê bin.
  • Naha, bi karanîna Helbestê jîngehek virtual biafirînin:
    poetry shell
  • Di dawiyê de, daxwazên pakêta bingehîn bi saz bikin:
    poetry install

Ji bo LlamaIndex jîngeha xwe saz bikin

1. Sazkirina OpenAI:

  • Bi xwerû, LlamaIndex OpenAI-ê bikar tîne gpt-3.5-turbo ji bo nifşê nivîsê û text-embedding-ada-002 ji bo hilanîn û vegirtinê.
  • Ji bo ku hûn vê sazkirinê bikar bînin, hûn ê hewce bikin ku hûn xwedî yek OPENAI_API_KEY. Bi qeydkirina li malpera OpenAI-yê û afirandina tokenek nû ya API-ê yek bistînin.
  • We nermbûn heye ku hûn li gorî hewcedariyên projeya xwe Modela Zimanê Mezin a bingehîn (LLM) xweş bikin. Bi pêşkêşvanê LLM-ya we ve girêdayî, dibe ku hûn hewceyê bişkok û nîgarên jîngehê yên din bin.

2. Setup Jîngeha Herêmî:

  • Heke hûn tercîh dikin ku OpenAI-ê bikar neynin, LlamaIndex bixweber diguhezîne modelên herêmî - LlamaCPP û llama2-chat-13B ji bo nifşê nivîsê, û BAAI/bge-small-en ji bo hilanîn û vegirtinê.
  • Bikaranîn LlamaCPP, rêberiya sazkirinê ya pêşkêşkirî bişopînin. Piştrast bikin ku saz bikin llama-cpp-python pakêt, bi îdeal ji bo piştgirîkirina GPU-ya we hatî berhev kirin. Ev sazkirin dê li seranserê CPU û GPU-ê dora 11.5 GB bîranîn bikar bîne.
  • Ji bo embeddings herêmî, darvekirin pip install sentence-transformers. Ev sazkirina herêmî dê nêzîkî 500 MB bîranîn bikar bîne.

Bi van sazûmanan re, hûn dikarin hawîrdora xwe xweş bikin da ku hêza OpenAI-ê bikar bînin an jî modelên herêmî bimeşînin, bi hewcedarî û çavkaniyên projeya we re li hev bikin.

Bikaranînek hêsan: Lêpirsîna Malperên bi LlamaIndex û OpenAI

Li vir skrîptek Python a hêsan heye ku destnîşan dike ka meriv çawa dikare li ser malperek ji bo têgihiştinên taybetî bipirse:

!pip install llama-index html2text
import os
from llama_index import VectorStoreIndex, SimpleWebPageReader
# Enter your OpenAI key below:
os.environ["OPENAI_API_KEY"] = ""
# URL you want to load into your vector store here:
url = "http://www.paulgraham.com/fr.html"
# Load the URL into documents (multiple documents possible)
documents = SimpleWebPageReader(html_to_text=True).load_data([url])
# Create vector store from documents
index = VectorStoreIndex.from_documents(documents)
# Create query engine so we can ask it questions:
query_engine = index.as_query_engine()
# Ask as many questions as you want against the loaded data:
response = query_engine.query("What are the 3 best advise by Paul to raise money?")
print(response)
The three best pieces of advice by Paul to raise money are:
1. Start with a low number when initially raising money. This allows for flexibility and increases the chances of raising more funds in the long run.
2. Aim to be profitable if possible. Having a plan to reach profitability without relying on additional funding makes the startup more attractive to investors.
3. Don't optimize for valuation. While valuation is important, it is not the most crucial factor in fundraising. Focus on getting the necessary funds and finding good investors instead.
Google Colab Llama Indeksa Notebook

Google Colab Llama Indeksa Notebook

Bi vê skrîptê re, we amûrek hêzdar afirandiye ku hûn tenê bi pirskirina pirsek agahdariya taybetî ji malperek derxînin. Ev tenê nihêrînek e ya ku dikare bi LlamaIndex û OpenAI-ê re gava ku li daneyên tevneyê dipirse were bidestxistin.

LlamaIndex vs Langchain: Hilbijartina Li ser Armanca Xwe

Hilbijartina we di navbera LlamaIndex û Langchain dê bi armanca projeya we ve girêdayî be. Ger hûn dixwazin amûrek lêgerîna aqilmend pêşve bibin, LlamaIndex hilbijarkek zexm e, wekî mekanîzmayek hilanînê ya jêhatî ji bo wergirtina daneyan pêş dikeve. Li aliyê din, ger hûn dixwazin pergalek mîna ChatGPT bi kapasîteyên pêvekê biafirînin, Langchain çûna we ye. Ew ne tenê gelek mînakên ChatGPT û LlamaIndex hêsan dike, lê di heman demê de fonksiyonê jî bi destûrkirina avakirina ajanên pir-peywirî berfireh dike. Mînakî, bi Langchain re, hûn dikarin ajanên ku karibin koda Python bimeşînin dema ku hevdemî lêgerînek Google-ê dimeşînin. Bi kurtasî, dema ku LlamaIndex di radestkirina daneyan de pêşkeftî ye, Langchain gelek amûran saz dike da ku çareseriyek holîstîkî peyda bike.

LlamaIndex Logo Karê hunerî bi karanîna Midjourney hatî afirandin

LlamaIndex Logo Karê hunerî bi kar hatî afirandin midjourney

Min pênc salên paşîn derbas kir ku xwe di cîhana balkêş a Fêrbûna Makîne û Fêrbûna Kûr de derbas kir. Hezbûn û pisporiya min hişt ku ez beşdarî zêdetirî 50 projeyên endezyariya nermalava cihêreng, bi taybetî li ser AI / ML-ê bikim. Meraqa min a domdar di heman demê de ez ber bi Pêvajoya Zimanê Xwezayî ve jî kişandim, qadek ku ez dixwazim bêtir lê vekolim.