Chroma - قاعدة بيانات التضمين مفتوحة المصدر .
أسرع طريقة لإنشاء تطبيقات Python أو JavaScript LLM باستخدام الذاكرة!
| | مستندات | الصفحة الرئيسية
pip install chromadb # python client
# for javascript, npm install chromadb!
# for client-server mode, chroma run --path /chroma_db_path
تتكون واجهة برمجة التطبيقات الأساسية من 4 وظائف فقط (قم بتشغيل قالب Google Colab أو Replit):
import chromadb
# setup Chroma in-memory, for easy prototyping. Can add persistence easily!
client = chromadb . Client ()
# Create collection. get_collection, get_or_create_collection, delete_collection also available!
collection = client . create_collection ( "all-my-documents" )
# Add docs to the collection. Can also update and delete. Row-based API coming soon!
collection . add (
documents = [ "This is document1" , "This is document2" ], # we handle tokenization, embedding, and indexing automatically. You can skip that and add your own embeddings as well
metadatas = [{ "source" : "notion" }, { "source" : "google-docs" }], # filter on these!
ids = [ "doc1" , "doc2" ], # unique for each doc
)
# Query/search 2 most similar results. You can also .get by id
results = collection . query (
query_texts = [ "This is a query document" ],
n_results = 2 ,
# where={"metadata_field": "is_equal_to_this"}, # optional filter
# where_document={"$contains":"search_string"} # optional filter
)
?️? LangChain
(بيثون وشبيبة) ? LlamaIndex
والمزيد قريبًا على سبيل المثال، حالة الاستخدام "Chat your data"
:
GPT3
للحصول على تلخيص أو تحليل إضافي. ما هي المضمنات؟
[1.2, 2.1, ....]
. هذه العملية تجعل المستندات "مفهومة" لنموذج التعلم الآلي.تقوم قواعد بيانات التضمين (المعروفة أيضًا باسم قواعد البيانات المتجهة ) بتخزين التضمينات وتسمح لك بالبحث حسب أقرب الجيران بدلاً من السلاسل الفرعية مثل قاعدة البيانات التقليدية. افتراضيًا، يستخدم Chroma محولات الجملة للتضمين نيابةً عنك، ولكن يمكنك أيضًا استخدام عمليات تضمين OpenAI، أو عمليات تضمين Cohere (متعددة اللغات)، أو عمليات التضمين الخاصة بك.
Chroma هو مشروع سريع التطور. نرحب بالمساهمين في العلاقات العامة والأفكار حول كيفية تحسين المشروع.
#contributing
Good first issue tag
إطلاق الإيقاع: نقوم حاليًا بإصدار إصدارات جديدة ذات علامات تمييزية من حزمتي pypi
و npm
في أيام الاثنين. الإصلاحات العاجلة تخرج في أي وقت خلال الأسبوع.
أباتشي 2.0