توسعه دهنده Smol: هوش مصنوعی که می تواند برای شما کدنویسی کند
Smol Developer یک ابزار هوش مصنوعی است که می تواند برای شما کدنویسی کند. هنوز در حال پیشرفت است، اما قبلاً یاد گرفته است که در تعدادی از زبان ها کد ایجاد کند. Smol Developer ممکن است برای نوشتن اسکریپت های پایه و همچنین برنامه های پیچیده استفاده شود. همچنین ممکن است برای اشکال زدایی برنامه ها و یافتن خطاها استفاده شود.
Smol Developer چیست؟
Smol Developer یک نمونه اولیه از یک عامل یا ابزار «توسعهدهنده جوان» است که برای کمک به توسعهدهندگان توسط چارچوبها یک پایگاه کد کامل بر اساس مشخصات محصول مشخص شده طراحی شده است. هدف آن ارائه راهی سریعتر برای تولید الگوهای کد بدون استفاده از شروعهای تخصصی و غیرقابل انعطاف مانند create-react-app
یا create-nextjs-app
است.
Smol Developer تلاش می کند انسان محور، منسجم و شفاف باشد. هدف آن کمک، بی ضرر و صادقانه است و در عین حال پایه کد را پایه و ایمن نگه می دارد (کمتر از 200 خط پایتون و دستورات). هدف این است که یک ابزار هوش مصنوعی بسازید که درک آن ساده باشد و با نیازهای مختلف توسعه سازگار شود.
توسعهدهندهها ممکن است از Smol Developer برای ایجاد یک حلقه محکم با هوش مصنوعی استفاده کنند، تا زمانی که به ساختار پایگاه کد مورد نظر برسند، دائماً دستور فریمورک را اصلاح و تکرار میکنند. هدف این است که به توسعه دهندگان ابزاری منعطف برای کمک به توسعه کد و در عین حال اطمینان از سادگی و قابلیت نگهداری ارائه شود.
توجه به این نکته مهم است که Smol Developer نمیخواهد به هوش عمومی مصنوعی (AGI) یا قدرت تخریب سیاره دست یابد. درعوض، بر ارائه کمک مفید به مهندسان با خودکارسازی وظایف چارچوبهای کدهای تکراری و زمانبر تمرکز دارد.
اعلام: گردش کار تولید کد انسان محور
مهندسی رویهای که از دستورات برای برقراری ارتباط با کمک هوش مصنوعی استفاده میکند. این روش اهمیت توسعهدهنده انسانی را در هدایت فرآیند ایجاد کد در حالی که از قابلیتهای هوش مصنوعی برای خودکارسازی مشاغل خاص استفاده میکند، برجسته میکند. این برنامه توسعه دهندگان را قادر می سازد بسته به درک و نیازهای خود، مکرراً پایگاه کد را تغییر داده و بهبود دهند.
این گردش کار چندین مزیت دارد:
- انسان محور: این روش بر توسعهدهنده انسانی متمرکز است و به آنها اجازه میدهد دستورالعملهای سطح بالا را ارائه دهند و به طور مداوم تولید کد را از طریق درخواستها شکل دهند.
- مشخصات افزایشی: توسعهدهندگان میتوانند با یک درخواست ساده شروع کنند و زمانی که بخشهای نامشخص کد را شناسایی میکنند، به تدریج اطلاعات و الزامات اضافی را اضافه کنند. این روش تکراری تضمین می کند که فرآیند توسعه مشارکتی و پویا است.
- بررسی کد دستی و مدیریت خطا: توسعهدهنده میتواند کد تولید شده را به صورت دستی بازرسی و آزمایش کند. هر گونه خطا یا مشکلی که در طول زمان اجرا رخ می دهد، ممکن است به سادگی با کپی کردن خطا در اعلان کنترل شود و امکان اشکال زدایی و بهبود ساده را فراهم کند.
- کمک اختیاری هوش مصنوعی: همانطور که قبلاً گفته شد، Debugger.py با ارزیابی کل پایگاه کد و ارائه توصیههای اصلاح کد خاص، کمک بیشتری ارائه میکند. این ابزار با ارائه توصیههای خاص برای بهبود، بهرهوری را افزایش میدهد.
تکامل بالقوه در برنامه نویسی، جایی که توسعه دهندگان می توانند به ابزارهای مبتنی بر هوش مصنوعی برای ایجاد داربست در پایگاه کد تکیه کنند و در عین حال مشارکت فنی را حفظ کنند. این به توسعه دهندگان این امکان را می دهد که به جای اینکه درگیر جزئیات پیاده سازی شوند، روی طراحی سطح بالاتر و حل مسئله تمرکز کنند.
نمودار قوس

نصب
برای نصب پروژه، این مراحل را دنبال کنید:
1. مخزن را شبیه سازی کنید:
git clone https://github.com/smol-ai/developer
2. فایل .example.env
را در .env
کپی کنید و کلیدهای API خود را پر کنید.
3. توجه داشته باشید که پروژه نیاز به دسترسی به APIهای بتا خصوصی خاصی دارد. اگر به Modal.com دسترسی دارید، بسته modal-client
را با استفاده از: pip install modal-client
نصب کنید. اگر نه، دستورالعملهای جایگزین زیر را دنبال کنید.
4. اگر به Modal.com دسترسی ندارید، وابستگی های پروژه را نصب کنید: pip install -r requires.txt
.
5. پروژه را بدون Modal اجرا کنید:
python main_no_modal.py YOUR_PROMPT_HERE.
برای نمونه برنامه افزودنی Chrome:
- به «مدیریت برنامههای افزودنی» در Chrome بروید.
- افزونه بسته نشده را بارگیری کنید.
- پوشه مربوطه را در سیستم فایل خود پیدا کنید و آن را بارگیری کنید.
- از یک وب سایت پر محتوا دیدن کنید.
- روی نماد پرنده زیبا کلیک کنید.
- افزونه را در عمل ببینید.
توجه داشته باشید که برنامه افزودنی Chrome ارائه شده بر اساس درخواست موجود در prompt.md
ایجاد میشود و کلمات اضافی بهطور تکراری در طول زمان اضافه میشوند.
اگر میخواهید از آن با زیرساختهای مختلف استفاده کنید، لطفاً کد را روی فورک تطبیق دهید. به راحتی می توانید مسائل را باز کنید یا درخواست ها را انجام دهید، و نگهدار پروژه با کمال میل فورک شما را برجسته می کند.
Smol dev
1. دستور زیر را برای اجرای Smol Dev با یک دستور مستقیماً در ترمینال اجرا کنید:
اجرای مودال main.py --prompt
یک برنامه افزودنی کروم که با کلیک روی آن، پنجره کوچکی با صفحه ای باز می شود که در آن می توانید یک درخواست برای خواندن صفحه باز شده فعلی و ایجاد پاسخ از OpenAI وارد کنید.
2. همانطور که در طول زمان جزئیات بیشتری را به درخواست خود اضافه می کنید، می توانید درخواست خود را در یک فایل جداگانه استخراج کنید. مطمئن شوید که درخواست شما با پسوند md. خاتمه می یابد و Smol Dev به طور خودکار آن فایل را پیدا کرده و از آن استفاده می کند:
اجرای مودال main.py --prompt prompt.md
3. هنگام اجرای Smol Dev، توجه داشته باشید که دایرکتوری تولید شده هر بار (به جز تصاویر) حذف می شود و همه فایل ها از ابتدا بازنویسی می شوند. این یک پایگاه کد تمیز و سازگار را تضمین می کند:
اجرای مودال main.py --prompt prompt.md
4. اگر دستور را تغییر دهید و فقط میخواهید روی فایل خاصی تأثیر بگذارد در حالی که بقیه فایلها دست نخورده باقی بماند، میتوانید پارامتر file
را مشخص کنید. به عنوان مثال، برای به روز رسانی فقط فایل popup.js
:
اجرای مودال main.py --prompt prompt.md --file popup.js
علاوه بر این، یک فایل shared_dependencies.md
خواهید یافت که به عنوان یک فایل کمکی عمل می کند و از انسجام بین فایل های مختلف در پایگاه کد تولید شده اطمینان حاصل می کند.
همچنین، راهنمای مهندسی سریع.
اشکالزدای Smol
Smol Debugger ابزاری است که از کل محتویات دایرکتوری تولید شده برای ارائه کمک در رفع اشکال استفاده می کند. با وارد کردن خطا به ابزار، میتوانید پاسخی دریافت کنید که از زمینه طولانیتر (از 32 هزار تا 100 هزار توکن) بهره میبرد و نیاز به جاسازی منبع را از بین میبرد.
برای استفاده از Smol Debugger، این دستورالعمل ها را دنبال کنید:
- برای اجرای Smol Debugger با خطایی در ترمینال دستور زیر را اجرا کنید:
اجرای معین debugger.py --prompt
"Uncaught (در وعده) TypeError: نمی توان ویژگی "pageTitle" از "(مقدار متوسط)" را تخریب کرد زیرا تعریف نشده است. در ابتدا (popup.js:59:11)"
اگر از GPT-4 استفاده می کنید (با فرض در دسترس بودن)، می توانید مدل را با استفاده از پارامتر --model
مشخص کنید:
اجرای مودال debugger.py --prompt "your_error msg_here" --model=gpt-4
Smol PM (مدیر محصول) ابزاری است که از محتویات کامل دایرکتوری ایجاد شده به عنوان زمینه استفاده می کند و دستوری برای ترکیب کل برنامه می دهد. اساساً فرآیند Smol Dev را با تولید یک اعلان بر اساس پایگاه کد فعلی معکوس میکند.
Smol PM (مدیر محصول)
Smol PM (مدیر محصول) ابزاری است که از محتویات کامل دایرکتوری ایجاد شده به عنوان زمینه استفاده می کند و دستوری برای ترکیب کل برنامه می دهد. اساساً فرآیند Smol Dev را با تولید یک اعلان بر اساس پایگاه کد فعلی معکوس میکند.
برای استفاده از Smol PM، این دستورالعمل ها را دنبال کنید:
1. دستور زیر را برای اجرای Smol PM اجرا کنید و یک دستور در ترمینال ایجاد کنید:
اجرای مودال code2prompt.py
2. اگر می خواهید از GPT-4 استفاده کنید (با فرض در دسترس بودن)، می توانید مدل را با استفاده از پارامتر --model
مشخص کنید:
اجرای مودال code2prompt.py --model=gpt-4
هنگامی که فرمان را اجرا میکنید، دستوری ارائه میدهد که میتوان از آن برای تولید برنامه کامل بر اساس محتویات دایرکتوری تولید شده استفاده کرد.
برای امتحان code2prompt2code، این مراحل را دنبال کنید:
- با استفاده از پارامتر
--prompt
یک درخواست اضافه کنید. این ممکن است به چند بار تکرار نیاز داشته باشد تا دستورات و مشخصات لازم برای تولید برنامه را ثبت کند. به عنوان مثال:
اجرای مودال code2prompt.py --prompt
"مطمئن شوید که همه شناسههای عناصر DOM و ساختار داده محتوای صفحه (ذخیره شده با {pageTitle, pageContent}) که توسط فایلهای js ارجاع/اشتراکگذاری شده است دقیقاً مطابقت دارند. توجه داشته باشید که فقط از APIهای Chrome Manifest V3 استفاده کنید. نام برنامه افزودنی را به code2prompt2code" --model=gpt-4 تغییر دهید
- اجرای دستور منجر به ایجاد یک برنامه افزودنی نیمه کاربردی کروم می شود که صرفاً بر اساس توضیحات ایجاد شده توسط مدل یک پایگاه کد جداگانه است.
برای حفاری بیشتر، اجرا کنید: برای استفاده از دستور ایجاد شده با Smol Dev.
اجرای مودال main.py --prompt code2prompt-gpt4.md --directory code2prompt2code
پیامدهای اجتماعی و تکنولوژیکی سرخ کردن عمیق مولد چند لایه پایگاه های کد هنوز در حال تحقیق و بررسی است.
با Smol PM و توانایی آن برای تولید برنامهها از پایگاههای کد موجود، آزمایش کنید و با خیال راحت پیامدهای احتمالی چنین تکنیکهای تولیدی را بررسی کنید.
این مقاله برای کمک به یادگیری Smol Developer است. ما اطمینان داریم که برای شما مفید بوده است. لطفاً نظرات و نظرات خود را در بخش نظرات زیر به اشتراک بگذارید.