Rumah >Peranti teknologi >AI >Cara Membina Chatbot Menggunakan Openai API & Pinecone

Cara Membina Chatbot Menggunakan Openai API & Pinecone

Lisa Kudrow
Lisa Kudrowasal
2025-03-08 12:04:09455semak imbas

llm chatbots: merevolusikan AI perbualan dengan pengambilan semula generasi tambahan (RAG)

Sejak pelancaran Chatgpt November 2022, model bahasa besar (LLM) telah menjadi di mana -mana, mengubah pelbagai aplikasi. Walaupun konsep chatbots tidak baru -banyak chatbots yang lebih tua terlalu kompleks dan mengecewakan -LLM telah menghidupkan semula bidang. Blog ini meneroka kuasa LLMS, teknik Generasi Augmented Generasi (RAG), dan bagaimana untuk membina chatbot anda sendiri menggunakan API GPT OpenAI dan Pinecone.

Panduan ini meliputi:

  • Pengambilan Generasi Tambahan (RAG)
  • Model Bahasa Besar (LLMS)
  • menggunakan Openai GPT dan API lain
  • pangkalan data vektor dan keperluan mereka
  • Membuat chatbot dengan pinecone dan openai dalam python

Untuk menyelam yang lebih mendalam, terokai kursus kami pada pangkalan data vektor untuk embeddings dengan pinecone dan kod-bersama-sama pada chatbots bangunan dengan API OpenAI dan Pinecone .

Model Bahasa Besar (LLMS)

How to Build a Chatbot Using the OpenAI API & Pinecone

Sumber imej

LLMS, seperti GPT-4, adalah algoritma pembelajaran mesin yang canggih yang menggunakan pembelajaran mendalam (khususnya, seni bina pengubah) untuk memahami dan menjana bahasa manusia. Dilatih dalam dataset besar -besaran (trilion perkataan dari pelbagai sumber dalam talian), mereka mengendalikan tugas bahasa yang kompleks.

LLMS cemerlang dalam penjanaan teks dalam pelbagai gaya dan format, dari penulisan kreatif hingga dokumentasi teknikal. Keupayaan mereka termasuk ringkasan, AI perbualan, dan terjemahan bahasa, sering menangkap ciri bahasa bernuansa.

Walau bagaimanapun, LLM mempunyai batasan. "Hallucinations" -generasi maklumat yang munasabah tetapi tidak betul -dan kecenderungan dari data latihan adalah cabaran yang signifikan. Walaupun LLMS mewakili kemajuan AI utama, pengurusan yang berhati -hati adalah penting untuk mengurangkan risiko.

Pengambilan Generasi Tambahan (RAG)

Sumber imej How to Build a Chatbot Using the OpenAI API & Pinecone

batasan LLMS (maklumat yang sudah lapuk, generik, atau palsu disebabkan oleh batasan data atau "halusinasi") ditangani oleh RAG. RAG meningkatkan ketepatan dan kepercayaan dengan mengarahkan LLM untuk mendapatkan maklumat yang relevan dari sumber yang ditentukan. Ini memberi pemaju lebih banyak kawalan ke atas tindak balas LLM. Proses RAG (dipermudahkan)

(tutorial kain terperinci boleh didapati secara berasingan.)

  1. Penyediaan data: Data luaran (mis., Penyelidikan semasa, berita) disediakan dan ditukar menjadi format (embeddings) yang boleh digunakan oleh LLM.
  2. Penyimpanan penyimpanan:
  3. Embeddings disimpan dalam pangkalan data vektor (seperti pinecone), dioptimumkan untuk pengambilan data vektor yang efisien.
  4. Pengambilan maklumat:
  5. Carian semantik menggunakan pertanyaan pengguna (ditukar menjadi vektor) mengambil maklumat yang paling relevan dari pangkalan data.
  6. pembesaran prompt:
  7. data yang diambil dan pertanyaan pengguna menambah prompt LLM, yang membawa kepada respons yang lebih tepat.
  8. Kemas kini data:
  9. Data luaran sentiasa dikemas kini untuk mengekalkan ketepatan.
  10. pangkalan data vektor

How to Build a Chatbot Using the OpenAI API & Pinecone Sumber imej

pangkalan data vektor menguruskan vektor dimensi tinggi (perwakilan data matematik). Mereka cemerlang dalam carian kesamaan berdasarkan jarak vektor, membolehkan pertanyaan semantik. Aplikasi termasuk mencari imej, dokumen, atau produk yang serupa. Pinecone adalah contoh yang popular, cekap, dan mesra pengguna. Teknik pengindeksan lanjutannya sesuai untuk aplikasi RAG.

Openai API

API OpenAI menyediakan akses kepada model seperti GPT, Dall-E, dan Whisper. Boleh diakses melalui permintaan HTTP (atau dipermudahkan dengan perpustakaan Python's

), ia mudah diintegrasikan ke dalam pelbagai bahasa pengaturcaraan.

Contoh Python: openai

Langchain (Rangka Kerja Gambaran Keseluruhan)

Langchain memudahkan pembangunan aplikasi LLM. Walaupun berkuasa, ia masih dalam perkembangan aktif, jadi perubahan API mungkin.
import os
os.environ["OPENAI_API_KEY"] = "YOUR_API_KEY"

from openai import OpenAI
client = OpenAI()

completion = client.chat.completions.create(
  model="gpt-4",
  messages=[
    {"role": "system", "content": "You are expert in Machine Learning."},
    {"role": "user", "content": "Explain how does random forest works?."}
  ]
)

print(completion.choices[0].message)

Contoh python akhir-ke-akhir: Membina chatbot LLM

Bahagian ini membina chatbot menggunakan OpenAI GPT-4 dan Pinecone. (Nota: Kebanyakan kod ini disesuaikan daripada panduan rasmi Pinecone Langchain.)

1. Persediaan Terbuka dan Pinecone: Dapatkan Kekunci API.

2. Pasang Perpustakaan: Gunakan PIP untuk memasang langchain, langchain-community, openai, tiktoken, pinecone-client, dan pinecone-datasets.

3. Sampel dataset: Muatkan dataset pra-tertanam (mis., wikipedia-simple-text-embedding-ada-002-100K dari pinecone-datasets). (Pensampelan subset disyorkan untuk pemprosesan yang lebih cepat.)

4. Persediaan Indeks Pinecone: Buat indeks pinecone (langchain-retrieval-augmentation-fast dalam contoh ini).

5. Penyisipan Data: Upsert data sampel ke dalam indeks pinecone.

6. Integrasi Langchain: Mulakan kedai vektor langchain menggunakan indeks pinecone dan embeddings openai.

7. Pertanyaan: Gunakan kedai vektor untuk melakukan carian persamaan.

8. Integrasi LLM: Gunakan ChatOpenAI dan RetrievalQA (atau RetrievalQAWithSourcesChain untuk atribusi sumber) untuk mengintegrasikan LLM dengan kedai vektor.

Kesimpulan

Blog ini menunjukkan kuasa RAG untuk membina chatbots berkuasa LLM yang boleh dipercayai dan relevan. Gabungan LLMS, pangkalan data vektor (seperti pinecone), dan kerangka seperti Langchain memberi kuasa kepada pemaju untuk membuat aplikasi AI perbualan yang canggih. Kursus kami menyediakan peluang pembelajaran selanjutnya dalam bidang ini.

Atas ialah kandungan terperinci Cara Membina Chatbot Menggunakan Openai API & Pinecone. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn