دستیار هوش مصنوعی به ReSharper می آید
JetBrains یک نسخه مبتنی بر هوش مصنوعی ReSharper، افزونه بهرهوری توسعهدهنده آن برای Microsoft Visual Studio منتشر کرد. نسخه جدید ReSharper 2023.2 اولین نسخه ای است که با کمک توسعه مبتنی بر هوش مصنوعی ارائه می شود.
نسخه Early Access Program شامل یک نسخه پیش نمایش از دستیار هوش مصنوعی است، یک چت که برای سوالات برنامه نویسی در نظر گرفته شده است. توسعه دهندگان دات نت با استفاده از Visual Studio و ReSharper می توانند از دستیار هوش مصنوعی برای عیب یابی یا اصلاح کدهای موجود، تولید قطعه کد یا مستندات و پرسیدن سوالات کلی در مورد برنامه نویسی استفاده کنند.
برای دسترسی به ویژگیهای مجهز به هوش مصنوعی، کاربران باید وارد سرویسهای هوش مصنوعی JetBrains شوند تا دستیار هوش مصنوعی را فعال کند. وقتی توسعهدهندگان از ویژگیهای هوش مصنوعی استفاده میکنند، برخی از اطلاعات زمینهای مانند انواع فایل، زبان و چارچوب مورد استفاده با ارائهدهنده مدل زبان بزرگ (LLM) به اشتراک گذاشته میشود. دستیار به کد منبع دسترسی ندارد مگر اینکه توسعه دهندگان قطعات کد را در دستورات خود قرار دهند. JetBrains همچنین قصد دارد از مدلهای محلی و داخلی پشتیبانی کند، بنابراین هیچ دادهای به ارائهدهندگان LLM مبتنی بر ابر ارسال نخواهد شد، اما مجموعه ویژگیها نسبتاً محدود خواهد بود.
دستیار زبان و فناوریهای پروژهها را در نظر میگیرد و تکههای کد با فرمت مناسب تولید میکند. کاربران می توانند کد تولید شده را خودشان کپی و جایگذاری کنند یا از چت بات بخواهند کد را در ویرایشگر وارد کند. دستیار همچنین شامل چندین فرمان برای شروع است.
در زیر نمونهای از آنچه دستیار با درخواست «چگونه یک عنصر را در یک آرایه مرتبشده پیدا کنم؟» ایجاد میکند، آورده شده است. یکی از دستورات موجود در دستیار:
اگر توسعهدهندگان از کد منبع در درخواستها استفاده کنند، کد منبع برای ارائهدهنده LLM ارسال میشود و مدل هوش مصنوعی میتواند کد تولید، توضیح یا مستندسازی کند. به عنوان مثال، وقتی از شما پرسیده شد: “چگونه می توانم مقادیر این پرس و جو را بخوانم؟” با کد زیر:
var connection = new SqliteConnection("DataSource=:memory:");
var command = connection.CreateCommand();
command.CommandText = "Select * from Item where value > ?";
command.Parameters.Add(4);
var reader = command.ExecuteReader();
دستیار هوش مصنوعی کدی را برای مصرف خواننده ایجاد می کند و نحوه کار آن را توضیح می دهد:
To read the values from the query, you can use the SqliteDataReader object that ExecuteReader() returns. Here's an example of how you can do this: while (reader.Read()) { for (int i = 0; i < reader.FieldCount; i++) { Console.WriteLine($"{reader.GetName(i)}: {reader.GetValue(i)}"); } }
این کد از طریق هر ردیفی که پرس و جو برمی گرداند حلقه می زند. برای هر ردیف، از طریق هر فیلد حلقه می زند و نام و مقدار فیلد را چاپ می کند.
دستیار همچنین متوجه شد که در قطعه کد اولیه، اتصال، فرمان و خواننده آزاد نمیشوند، بنابراین کد را مجدداً اصلاح کرد تا مطمئن شود که به درستی پاک شدهاند:
لطفاً توجه داشته باشید که قبل از اجرای دستور باید اتصال را باز کنید و بعد از اتمام آن را ببندید. این هم کد کامل:
using (var connection = new SqliteConnection("DataSource=:memory:"))
{
connection.Open();
using (var command = connection.CreateCommand())
{
command.CommandText = "Select * from Item where value > ?";
command.Parameters.AddWithValue("value", 4);
using (var reader = command.ExecuteReader())
{
while (reader.Read())
{
for (int i = 0; i < reader.FieldCount; i++)
{
Console.WriteLine($"{reader.GetName(i)}: {reader.GetValue(i)}");
}
}
}
}
}
این کد از دستورات استفاده می کند تا اطمینان حاصل کند که اشیاء SqliteConnection، SqliteCommand و SqliteDataReader به درستی پس از استفاده از بین رفته اند.
ReSharper همچنین از بازبینی درخواستها پشتیبانی میکند: اگر درخواست اصلی نیاز به بازبینی یا اطلاعات بیشتر داشته باشد، توسعهدهندگان میتوانند به جای تایپ مجدد کل درخواست، آن را ویرایش کنند. این یک چت جدید با دستیار ایجاد می کند و در عین حال چت اصلی را نیز حفظ می کند. علاوه بر این، توسعه دهندگان می توانند چت ها را با ایجاد، کپی کردن، تغییر نام یا حذف آنها سازماندهی کنند.
دستیار هوش مصنوعی JetBrains اشتراکات زیادی با سایر ابزارهای مجهز به هوش مصنوعی مانند GitHub Copilot و Amazon CodeWhisperer دارد، اما همچنین ویژگیهای منحصربهفردی از جمله تاریخچه چت و دسترسی به دستیار با ALT+Enter، میانبر برای همه چیز، اضافه میکند.
ویژگیهای هوش مصنوعی در حال حاضر بر اساس تعداد کاربران و کشورهایی که سرویس OpenAI در آنها در دسترس است، محدود شده است. سرویس هوش مصنوعی به عنوان بخشی از برنامه EAP رایگان است و اطلاعات قیمت متعاقبا اعلام خواهد شد. به غیر از ReSharper، دستیار مجهز به هوش مصنوعی در Rider و همچنین ReSharper برای C++ در دسترس خواهد بود.
این نسخه همچنین راهحلهای سریع و بازرسیهای جدیدی را برای کار با متغیرهای دور انداختن و نکات درونبندی برای جستارهای LINQ معرفی کرد. هنگام اشکالزدایی کوئریهای LINQ، توسعهدهندگان اکنون خروجی میانی را در هر مرحله از پرسوجو بهعنوان نکات درونافزاری میبینند.
لینک کوتاه : https://jkzweb.com/478259