JotBot بسلاسة تلقائي توثيق الكود لمشاريع GO و TypeScript ، وسد الفجوة بين التعليمات البرمجية الشاملة والوثائق الثاقبة.
تم إنشاء وثائق هذا المستودع بالكامل بواسطة JotBot باستخدام gpt-4 ولكن حاليًا (2023/07/18) أحصل على أفضل النتائج باستخدام gpt-3.5-turbo .
تُظهر طرز gpt-3.5 و gpt-4 من Openai تقلبات في الجودة بمرور الوقت. يمكن أن يكون تحديد النموذج الذي يتفوق في أي مثيل معين أمرًا صعبًا ، لكن gpt-4 غالبًا ما يؤدي إلى نتائج أكثر اتساقًا.
للتطبيقات العامة ، أوصي باستخدام gpt-3.5-turbo-16k كإعداد افتراضي ، والتحول Temporarliy إلى gpt-4 في السيناريوهات التي قد تقصر gpt-3.5 .
يعد gpt-4-1106-preview أفضل نموذج لتوليد الوثائق حتى الآن. النموذج الافتراضي لـ JOTBOT هو gpt-3.5-turbo والذي يعطي أفضل قيمة مقابل المال.
يمكنك العثور على وثائق TypeScript التي تم إنشاؤها في الحزم/Jotbot.
go install github.com/modernice/jotbot/cmd/jotbot@latest
npm i -g jotbot-ts@latest
pnpm i -g jotbot-ts@latest
ضمن قاعدة الكود و/أو TypeScript ، قم بتشغيل:
jotbot generate --key OPENAI_API_KEY
يستخدم Jotbot نماذج GPT من Openai لتوليد الوثائق. بشكل افتراضي ، يستخدم Jotbot نموذج gpt-3.5-turbo والذي يوفر نتائج جيدة بمعدل فعال من حيث التكلفة. ومع ذلك ، يتم إنتاج أفضل النتائج بواسطة gpt-4 و text-davinci-003 ، والتي تتراوح ما بين 10 إلى 30X من gpt-3.5-turbo .
أنت حر في اختيار أي طراز من مستندات Openai وتمريره عبر- --model|-m flag:
jotbot generate -m text-davinci-003
go install إذا كنت قد تم تثبيتها ، يمكنك ببساطة تثبيت JotBot باستخدام go install :
go install github.com/modernice/jotbot/cmd/jotbot@latest
يمكنك تنزيل أحدث ثنائي من صفحة الإصدارات.
لتمكين دعم TypeScript (و JavaScript) ، تحتاج أيضًا إلى تثبيت حزمة jotbot-ts NPM.
npm install -g jotbot-ts
pnpm install -g jotbot-ts
لإنشاء وثائق مفقودة لقاعدة الكود الخاصة بك ، قم بتشغيل الأمر التالي:
jotbot generate [options]
بشكل افتراضي ، سيجد هذا الأمر جميع ملفات GO و TypeScript (و JavaScript) في الدلائل الحالية والمتداخلة وإنشاء وثائق لهم. تم استبعادها من البحث افتراضيًا:
**/.*/****/dist/****/node_modules/****/vendor/****/testdata/****/test/****/tests/****/*.pb.go jotbot --help
| خيار | وصف | تقصير |
|---|---|---|
--root | دليل الجذر للمستودع | "." |
--include, -i | نمط (نماذج) GLOB لتضمين الملفات | |
--include-tests, -T | قم بتضمين وظائف testxxx () | |
--exclude, -e | نمط (نماذج) الكرة الأرضية لاستبعاد الملفات | |
--exclude-internal, -E | استبعاد الدلائل "الداخلية" (GO-TERMING) | true |
--match | تعبير (تعبيرات) منتظمة لمطابقة المعرفات | |
--symbol, -s | رمز (ق) للبحث عن الكود (TS/JS محدد) | |
--clear, -c | تعليقات القوة في موجه التوليد (GO الخاص) | |
--branch | اسم الفرع لارتكاب تغييرات (اترك فارغة لعدم الالتزام) | |
--limit | الحد من عدد الملفات لإنشاء وثائق ل | 0 |
--dry | اطبع التغييرات دون تطبيقها | false |
--model, -m | نموذج Openai المستخدم لتوليد الوثائق | "gpt-3.5-turbo" |
--maxTokens | الحد الأقصى لعدد الرموز لتوليد وثائق واحدة | 512 |
--parallel, -p | عدد الملفات للتعامل معها بشكل متزامن | 4 |
--workers | عدد العمال للاستخدام لكل ملف | 2 |
--override, -o | تجاوز الوثائق الحالية (GO-TPECING) | |
--key | مفتاح API Openai | |
--verbose, -v | تمكين تسجيل مطوّلة | false |


معهد ماساتشوستس للتكنولوجيا