ورودیهای ابزار
کد و پیغام خطا را بچسبانید تا علت مشکل و نسخهی اصلاحشده را بگیرید، یا بخواهید کد خطبهخط به فارسی توضیح داده شود یا تمیزتر و بهینهتر بازنویسی شود. برای پایتون، جاوااسکریپت، PHP، جاوا، C# و بیشتر.
رفع باگ کد با هوش مصنوعی چطور کار میکند؟
رفع باگ کد با هوش مصنوعی از همان کاری شروع میشود که یک همکار ارشد میکند: کد و پیغام خطا را میخواند، علت ریشهای را در دو سه جمله میگوید، بعد نسخهی کامل اصلاحشده را میدهد و تغییرها را فهرست میکند. همین ابزار سه کار دیگر هم دارد: توضیح کد بخشبهبخش به فارسی، تمیز و بهینه کردن آن بدون عوض کردن رفتارش، و نوشتن تست. کد در بلوک کد با نام زبان میآید، نام متغیرها انگلیسی میماند و توضیحها فارسیاند.
دانشجوهای برنامهنویسی، برنامهنویسهایی که کد قدیمی دیگران را تحویل گرفتهاند و تازهکارهای پایتون و جاوااسکریپت بیشترین استفاده را میبرند.
فرم را چطور پر کنیم؟
- کد: فقط بخش مربوط را بچسبانید، ولی کامل: تابعی که خطا میدهد، همراه importها و تعریفهایی که به آنها وابسته است. این خانه تا ۸۰۰۰ نویسه جا دارد. کلید API، رمز و دادهی واقعی کاربران را پیش از چسباندن پاک کنید.
- چه کاری انجام شود؟ باگ را پیدا و رفع کن، کد را توضیح بده، تمیز و بهینهاش کن، یا برایش تست بنویس.
- پیغام خطا یا رفتار نادرست (اختیاری ولی کلیدی): متن کامل خطا و stack trace را بچسبانید، یا بنویسید چه انتظاری داشتید و چه شد. «فهرست خالی برمیگردد ولی باید سه آیتم باشد» خیلی بهتر از «کار نمیکند» است.
- زبان و فریمورک (اختیاری): نسخه را هم بنویسید، مثل «Python 3.12 / Django 5» یا «Node 22 / Express 5»؛ خیلی از باگها به تفاوت نسخهها برمیگردند.
نمونهی ورودی
| خانه | نمونه |
|---|---|
| کد | تابع پایتونی که سفارشها را از فایل CSV میخواند و جمع مبلغ را برمیگرداند |
| چه کاری انجام شود؟ | باگ را پیدا و رفع کن |
| پیغام خطا | TypeError: unsupported operand type(s) for +: 'int' and 'str' |
| زبان و فریمورک | Python 3.12 |
پاسخ اول علت را میگوید: مبلغها از فایل CSV بهصورت رشته خوانده شدهاند و با عدد جمع نمیشوند. بعد تابع اصلاحشدهی کامل با تبدیل نوع و مدیریت خانهی خالی میآید و در آخر فهرست تغییرها. اگر برای تشخیص اطلاعاتی کم باشد، مثلاً بخشی از کد که فایل را میخواند، ابزار دقیقاً همان را میپرسد و کتابخانه یا تابع خیالی نمیسازد.
نکتههایی برای تشخیص سریعتر
- کوچکترین نمونهی خطا را بدهید: هرچه کد کوتاهتر و خطا دقیقتر باشد، تشخیص درستتر است.
- کد اصلاحشده را اجرا کنید: پیشنهاد را مستقیم در شاخهی اصلی نگذارید؛ اول تست کنید.
- پیش از اصلاح، توضیح بخواهید: برای کد ناآشنا، یک بار گزینهی «توضیح بده» را بزنید تا بفهمید کد چه میکند.
- در گفتگو ادامه دهید: پاسخ در یک گفتگو باز میشود؛ خطای تازه را همانجا بچسبانید، یا اگر جواب قانعکننده نبود، مدل را عوض کنید.
راهنمای کاملتر در برنامهنویسی با هوش مصنوعی آمده است. برای طراحی، مرور کد و پرسشهای معماری، با دستیار برنامهنویس ارشد گفتگو کنید.
سوالات متداول
از چه زبانهای برنامهنویسی پشتیبانی میکند؟
پایتون، جاوااسکریپت و TypeScript، PHP، جاوا، C#، Go و بیشتر زبانها و فریمورکهای رایج. زبان و نسخه را در فرم بنویسید تا پیشنهادها با همان نسخه سازگار باشند.
کدم جایی منتشر میشود؟
کد برای گرفتن پاسخ به مدل فرستاده میشود و در تاریخچهی گفتگوی حساب شما میماند؛ تا خودتان لینک اشتراک گفتگو را نسازید، جایی منتشر نمیشود. با این حال کلیدها، رمزها و دادهی واقعی کاربران را در هیچ ابزار آنلاینی نچسبانید.
برای پروژهی بزرگ هم مناسب است؟
این فرم برای یک تابع یا یک فایل مناسب است. برای کار روی کل مخزن، دستیارهای کدنویسی داخل ویرایشگر مثل Cline و Continue را با API سازگار با OpenAI به 1ai وصل کنید؛ راهنمای اتصال در صفحهی توسعهدهندگان است.
کد اصلاحشده همیشه درست است؟
نه همیشه. پیشنهاد معمولاً نقطهی شروع خوبی است، اما ممکن است حالتهای مرزی پروژهی شما را نبیند. کد را اجرا و تست کنید و اگر لازم شد، خروجی تست را در همان گفتگو بچسبانید.