ابحث في قاعدة الشفرة الخاصة بك بشكل دلالي أو الدردشة معها من CLI. حافظ على قاعدة بيانات المتجهات الفائقة حتى الآن إلى أحدث تغييرات رمز. الدعم المحلي 100 ٪ دون أي dataleaks.
بنيت مع Langchain ، Treesitter ، محولات الجملة ، embedding المدرب ، Faiss ، Lama.cpp ، Ollama ، STIPLELIT.
ملحوظة
ستكون هناك نتائج أفضل إذا تم توثيق الرمز جيدًا. قد تفكر في DOC-Comments-AI لتوليد وثائق الرمز.
codeqai search

codeqai chat

codeqai sync
codeqai app

ملحوظة
عند الاستخدام الأول ، سيتم فهرسة المستودع باستخدام نموذج التضمينات المكوّن الذي قد يستغرق بعض الوقت.
التثبيت في بيئة معزولة مع pipx :
pipx install codeqai
تأكد من استخدام PIPX Python> = 3.9 ، <3.12.
لتحديد إصدار Python بشكل صريح مع PIPX ، قم بتنشيط إصدار Python المطلوب (على سبيل المثال مع pyenv shell 3.XX ) والتثبيت مع:
pipx install codeqai --python $(which python)
إذا كنت لا تزال تواجه مشكلات باستخدام PIPX ، يمكنك أيضًا التثبيت مباشرة من المصدر من خلال PYPI مع:
pip install codeqai
ومع ذلك ، يوصى باستخدام PIPX للاستفادة من البيئات المعزولة لتبعيات.
قم بزيارة قسم استكشاف الأخطاء وإصلاحها لحلول القضايا المعروفة أثناء التثبيت.
ملحوظة
لم يتم تثبيت بعض الحزم بشكل افتراضي. في البداية ، يُطلب من استخدام faiss-cpu أو faiss-gpu . يوصى بـ FAISS-GPU إذا كان الجهاز يدعم CUDA 7.5+. إذا تم استخدام التضمينات المحلية و LLMS ، فسيُطلب منه أيضًا تثبيت محولات الجملة أو المعلم أو llama.cpp.
في البداية الاستخدام أو عن طريق الجري
codeqai configure
يتم بدء عملية التكوين ، حيث يمكن اختيار التضمينات و LLMs.
مهم
إذا كنت ترغب في تغيير نموذج التضمينات في التكوين لاحقًا ، فاحذف الملفات المخزولة في ~/.cache/codeqai . بعد ذلك ، يتم إنشاء ملفات متجر Vector مرة أخرى باستخدام نموذج التضمينات المكون حديثًا. هذا أمر ضروري لأن بحث التشابه لا يعمل إذا اختلفت النماذج.
إذا تم استخدام النماذج عن بُعد ، فإن متغيرات البيئة التالية مطلوبة. إذا تم تعيين متغيرات البيئة المطلوبة بالفعل ، فسيتم استخدامها ، وإلا فسيتم مطالبتك بإدخالها والتي يتم تخزينها بعد ذلك في ~/.config/codeqai/.env .
export OPENAI_API_KEY = " your OpenAI api key " export OPENAI_API_TYPE = " azure "
export AZURE_OPENAI_ENDPOINT = " https://<your-endpoint>.openai.azure.com/ "
export OPENAI_API_KEY = " your Azure OpenAI api key "
export OPENAI_API_VERSION = " 2023-05-15 " export ANTHROPIC_API_KEY= " your Anthropic api key " ملحوظة
لتغيير متغيرات البيئة لاحقًا ، قم بتحديث ~/.config/codeqai/.env يدويًا.
يتم تحليل ريبو GIT بأكمله مع الأشجار لاستخراج جميع الطرق مع الوثائق وحفظها في قاعدة بيانات متجه FAISS المحلية إما مع محولات الجملة أو معلميات المعلمين أو Openai Embedding-ADA-002.
يتم حفظ قاعدة بيانات المتجه في ملف على نظامك وسيتم تحميله لاحقًا مرة أخرى بعد مزيد من الاستخدام. بعد ذلك ، من الممكن إجراء بحث دلالي على قاعدة الشفرة بناءً على نموذج التضمين.
للدردشة مع Codebase Llama.cpp أو Ollama يتم استخدامها من خلال تحديد النموذج المطلوب. لمزامنة التغييرات الحديثة في المستودع ، يتم حفظ تجزئة GIT لكل ملف مع معرفات المتجه إلى ذاكرة التخزين المؤقت. عند مزامنة قاعدة بيانات المتجه مع أحدث حالة GIT ، تتم مقارنة تجزئة الالتزام المخزنة مؤقتًا بتجزئة GIT الحالية لكل ملف في المستودع. إذا اختلفت تجزئة الالتزام GIT ، يتم حذف المتجهات ذات الصلة من قاعدة البيانات وإدراجها مرة أخرى بعد إعادة إنشاء تضمينات المتجه. باستخدام llama.cpp ، يجب أن يكون النموذج المحدد متاحًا على النظام مقدمًا. باستخدام Ollama ، يجب تشغيل حاوية Ollama مع النموذج المطلوب محليًا مسبقًا على المنفذ 11434. كما يمكن استخدام Openai أو Azure-Openai في نماذج الدردشة عن بُعد.
قم بتثبيت huggingface-cli وقم بتنزيل طرازك المطلوب من محور النموذج. على سبيل المثال
huggingface-cli download TheBloke/CodeLlama-13B-Python-GGUF codellama-13b-python.Q5_K_M.gguf
سيتم تنزيل نموذج codellama-13b-python.Q5_K_M . بعد الانتهاء من التنزيل ، تتم طباعة مسار المطلق للنموذج .gguf إلى وحدة التحكم.
مهم
يجب أن تكون النماذج المتوافقة مع llama.cpp في تنسيق .gguf .
pipx pip failed to build package: tiktoken
Some possibly relevant errors from pip install:
error: subprocess-exited-with-error
error: can't find Rust compiler
تأكد من تثبيت برنامج التحويل البرمجي للصدأ على نظامك من هنا.
faiss × Building wheel for faiss-cpu (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [12 lines of output]
running bdist_wheel
...
note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for faiss-cpu
Failed to build faiss-cpu
ERROR: Could not build wheels for faiss-cpu, which is required to install pyproject.toml-based projects
تأكد من تثبيت CodeQai مع Python <3.12. لا توجد عجلة Faiss متاحة حتى الآن لبيثون 3.12.
إذا كنت تفتقد ميزة أو تواجه خطأ ، فلا تتردد في فتح مشكلة أو رفع العلاقات العامة. أي نوع من المساهمة موضع تقدير كبير!
لإنشاء وتشغيل المشروع في وضع التطوير ، تأكد من تثبيت conda أو conda-lock أو poetry .
باستخدام conda Run:
conda env create -f environment.yml -n codeqai
أو عن طريق استخدام conda-lock Run:
conda-lock install --name codeqai conda-<YOUR_PLATFORM>.lock
تنشيط البيئة وتثبيت التبعيات مع:
conda activate codeqai && poetry install
باستخدام poetry تشغيل:
poetry install && poetry shell
قم بتشغيل codeqai chat داخل بيئة التطوير مع:
poetry run codeqai chat
إجراء الاختبارات مع:
poetry run pytest -s -vv