Quivr ช่วยให้คุณสร้างสมองที่สองของคุณ ใช้พลังของ GenerativeAI เพื่อเป็นผู้ช่วยส่วนตัวของคุณ !
เราดูแล RAG เพื่อให้คุณสามารถมุ่งเน้นไปที่ผลิตภัณฑ์ของคุณได้ เพียงติดตั้ง quivr-core และเพิ่มลงในโปรเจ็กต์ของคุณ ตอนนี้คุณสามารถนำเข้าไฟล์และถามคำถามได้แล้ว*
เราจะปรับปรุง RAG และเพิ่มคุณสมบัติเพิ่มเติม คอยติดตาม!
นี่คือแกนหลักของ Quivr ซึ่งเป็นสมองของ Quivr.com
คุณสามารถค้นหาทุกสิ่งได้ในเอกสารประกอบ
ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้งสิ่งต่อไปนี้:
ขั้นตอนที่ 1 : ติดตั้งแพ็คเกจ
pip install quivr-core # Check that the installation worked
ขั้นตอนที่ 2 : สร้าง RAG ด้วยโค้ด 5 บรรทัด
import tempfile
from quivr_core import Brain
if __name__ == "__main__" :
with tempfile . NamedTemporaryFile ( mode = "w" , suffix = ".txt" ) as temp_file :
temp_file . write ( "Gold is a liquid of blue-like colour." )
temp_file . flush ()
brain = Brain . from_files (
name = "test_brain" ,
file_paths = [ temp_file . name ],
)
answer = brain . ask (
"what is gold? asnwer in french"
)
print ( "answer:" , answer )
การสร้างเวิร์กโฟลว์ RAG พื้นฐานเหมือนกับที่กล่าวมาข้างต้นนั้นง่ายดาย ต่อไปนี้เป็นขั้นตอน:
import os
os . environ [ "OPENAI_API_KEY" ] = "myopenai_apikey"
Quivr รองรับ API จาก Anthropic, OpenAI และ Mistral นอกจากนี้ยังรองรับโมเดลท้องถิ่นที่ใช้ Ollama อีกด้วย
basic_rag_workflow.yaml
และคัดลอกเนื้อหาต่อไปนี้ลงไป workflow_config :
name : " standard RAG "
nodes :
- name : " START "
edges : ["filter_history"]
- name : " filter_history "
edges : ["rewrite"]
- name : " rewrite "
edges : ["retrieve"]
- name : " retrieve "
edges : ["generate_rag"]
- name : " generate_rag " # the name of the last node, from which we want to stream the answer to the user
edges : ["END"]
# Maximum number of previous conversation iterations
# to include in the context of the answer
max_history : 10
# Reranker configuration
reranker_config :
# The reranker supplier to use
supplier : " cohere "
# The model to use for the reranker for the given supplier
model : " rerank-multilingual-v3.0 "
# Number of chunks returned by the reranker
top_n : 5
# Configuration for the LLM
llm_config :
# maximum number of tokens passed to the LLM to generate the answer
max_input_tokens : 4000
# temperature for the LLM
temperature : 0.7
from quivr_core import Brain
brain = Brain . from_files ( name = "my smart brain" ,
file_paths = [ "./my_first_doc.pdf" , "./my_second_doc.txt" ],
)
brain . print_info ()
from rich . console import Console
from rich . panel import Panel
from rich . prompt import Prompt
from quivr_core . config import RetrievalConfig
config_file_name = "./basic_rag_workflow.yaml"
retrieval_config = RetrievalConfig . from_yaml ( config_file_name )
console = Console ()
console . print ( Panel . fit ( "Ask your brain !" , style = "bold magenta" ))
while True :
# Get user input
question = Prompt . ask ( "[bold cyan]Question[/bold cyan]" )
# Check if user wants to exit
if question . lower () == "exit" :
console . print ( Panel ( "Goodbye!" , style = "bold yellow" ))
break
answer = brain . ask ( question , retrieval_config = retrieval_config )
# Print the answer with typing effect
console . print ( f"[bold green]Quivr Assistant[/bold green]: { answer . answer } " )
console . print ( "-" * console . width )
brain . print_info ()
คุณสามารถไปได้ไกลยิ่งขึ้นด้วย Quivr โดยเพิ่มการค้นหาทางอินเทอร์เน็ต เพิ่มเครื่องมือ ฯลฯ ตรวจสอบเอกสารประกอบสำหรับข้อมูลเพิ่มเติม
ขอขอบคุณผู้คนที่ยอดเยี่ยมเหล่านี้:
คุณได้รับคำขอดึงหรือไม่? เปิดมันแล้วเราจะตรวจสอบโดยเร็วที่สุด ตรวจสอบบอร์ดโครงการของเราที่นี่เพื่อดูว่าเรากำลังมุ่งเน้นอะไรอยู่ และอย่าลังเลที่จะนำแนวคิดใหม่ๆ ของคุณมาแสดง!
โครงการนี้จะเป็นไปไม่ได้หากไม่ได้รับการสนับสนุนจากพันธมิตรของเรา ขอบคุณสำหรับการสนับสนุนของคุณ!
โครงการนี้ได้รับอนุญาตภายใต้ใบอนุญาต Apache 2.0 - ดูรายละเอียดในไฟล์ใบอนุญาต