افزونهی Genie AI که برای استفاده در محیط Visual Studio Code (VS Code) توسعه یافته است٬ تجربه کدنویسی را با ارائه کمکهای هوشمند بهبود میبخشد. این ابزار با استفاده از مدلهای زبانی پیشرفته به توسعهدهندگان کمک میکند تا روند کار خود را سادهتر کنند، کیفیت کد را افزایش دهند و وظایف تکراری را به صورت خودکار انجام دهند.
مزایای استفاده از AI Coding Extension در VS Code # افزونههای کدنویسی هوش مصنوعی مانند Genie AI به طور قابل توجهی بهرهوری توسعهدهندگان که از Visual Studio Code (VS Code) استفاده میکنند را افزایش میدهند.
...
این پست راهنمایی برای بهبود ترنسکریپشنهای Whisper ارائه میدهد. ما دادههای صوتی را از طریق برش و تقسیمبندی بهینهسازی میکنیم تا کیفیت ترنسکریپشنهای Whisper را افزایش دهیم. پس از ترنسکریپشن، خروجی را با افزودن علائم نگارشی، تنظیم اصطلاحات محصول (مثلاً ‘five two nine’ به ‘529’) و کاهش مشکلات Unicode بهبود میبخشیم. این استراتژیها به بهبود وضوح ترنسکریپشنها کمک میکنند، اما به یاد داشته باشید که سفارشیسازی بر اساس یوزکیس خاص شما ممکن است مفید باشد.
...
پردازش اسناد PDF برای برنامههای RAG # این Notebook نشان میدهد چگونه میتوان از GPT-4V برای تبدیل اسناد PDF مانند اسلایدها یا خروجیهای صفحات وب به محتوای قابل استفاده برای برنامههای RAG استفاده کرد.
این تکنیک میتواند در صورتی که دادههای غیرساختارمند زیادی دارید که حاوی اطلاعات ارزشمندی هستند و میخواهید به عنوان بخشی از پایپلاین RAG خود آنها را بازیابی کنید، مورد استفاده قرار گیرد.
به عنوان مثال، میتوانید یک Knowledge Assistant بسازید که بتواند به سوالات کاربران درباره شرکت یا محصول شما بر اساس اطلاعات موجود در اسناد PDF پاسخ دهد.
...
مدل جدید GPT-4 Turbo، اکنون امکان فراخوانی توابع با قابلیتهای دیداری (vision)و استدلال بهتر را فراهم میکند. استفاده از تصاویر با فراخوانی توابع، موارد کاربرد جدید را امکانپذیر میکند و به شما اجازه میدهد فراتر از OCR و توضیحات تصاویر بروید.
ما دو مثال را برای نشان دادن استفاده از فراخوانی توابع با GPT-4 Turbo با قابلیت دیداری بررسی خواهیم کرد:
شبیهسازی یک دستیار خدمات مشتری تحلیل یک نمودار سازمانی برای استخراج اطلاعات کارکنان برای اجرای کدهای زیر ابتدا باید یک کلید API را از طریق پنل کاربری گیلاس تولید کنید.
...
این نوتبوک نشان میدهد چگونه میتوان از embeddings برای پیادهسازی جستجوی معنایی در میان کدهای کامپیوتری استفاده کرد. برای این پست ما از کد openai-python که در گیتهاب قایل دسترسی است٬ استفاده میکنیم. سپس نسخه سادهای از تجزیه فایل و استخراج توابع از فایلهای پایتون را پیادهسازی میکنیم که میتوانند embed، index و query شوند.
توابع کمکی # برای شروع به چند تابع تجزیهی ساده برای استخراج توابع داخل کدبیس خود نیاز داریم.
...
خوشهبندی K-means در پایتون با استفاده از Gilas API # ما از یک الگوریتم ساده k-means برای نشان دادن چگونگی انجام خوشهبندی استفاده میکنیم. خوشهبندی میتواند به کشف گروههای ارزشمند و پنهان در دادهها کمک کند.
جمع آوری داده ها # مجموعه دادهای که در این مثال استفاده شده است، نظرات کاربران در مورد غذاهای مختلف در آمازون میباشد. این مجموعه داده شامل 568,454 نظر در مورد غذاهای مختلف است که تا اکتبر 2012 توسط کاربران آمازون ثبت شدهاند.
...
دستهبندی با استفاده از embeddings # راههای زیادی برای دستهبندی متن وجود دارد. این نوتبوک مثالی از دستهبندی متن با استفاده از embeddings را نمایش میدهد.
در این نوتبوک امتیاز بررسی غذایی (از ۱ تا ۵) بر اساس embedding متن بررسی و پیشبینی میشود. ما دیتاست را به مجموعههای آموزشی و آزمایشی تقسیم میکنیم تا بتوانیم عملکرد مدل را بر روی دادههای دیده نشده به طور واقعی ارزیابی کنیم.
...
رابط برنامهنویسی یا API گیلاس یک پارامتر اختیاری برای کار با مدل wisper در اختیار شما قرار میدهد. هدف از پراپمت کمک به اتصال چندین بخش صوتی است. با ارسال متن تولید شده (ترنسکریپشن) در بخش قبلی از طریق پراپمت، مدل Whisper میتواند از این کانتکست برای درک بهتر گفتار و حفظ سبک نوشتاری استفاده کند.
با این حال، پراپمتها نیازی به ترنسکریپشنهای واقعی از بخشهای صوتی قبلی ندارند. پراپمتهای ساختگی میتوانند مدل را به استفاده از املاء یا سبکهای خاص هدایت کنند.
...
مدیریت متنهای طولانیتر از طول کانتکست مدل # مدلهای embedding نمیتوانند متنی که از طول کانتکست حداکثری مدل بیشتر باشد را پردازش کنند. طول حداکثری بسته به مدل متفاوت است و بر اساس توکنها اندازهگیری میشود، نه طول رشته. اگر با مفهموم توکن آشنا نیستید، به پست شمردن تعداد توکنها با tiktoken مراجعه کنید.
این notebook نشان میدهد که چگونه متنهایی که طولانیتر از طول کانتکست حداکثری مدل هستند را مدیریت کنید.
...
چگونه با محدودیتهای Rate limit برخورد کنیم # هنگامی که به طور مکرر Gilas API را فراخوانی میکنید، ممکن است با پیامهای خطایی مانند 429: 'Too Many Requests' یا RateLimitError مواجه شوید. این پیامهای خطا به دلیل تجاوز از محدودیتهای Rate limit رخ میدهند.
محدودیتهای Rate limit به منظور حفظ کیفیت خدمات ما برای همه کاربران است. Rate limit بر روی تعداد دفعاتی که یک کاربر میتواند در یک دوره زمانی مشخص به خدمات ما دسترسی پیدا کند، محدودیت اعمال میکند.
...
نمایش دو بعدی embeddings # ما از t-SNE برای کاهش ابعاد embeddings از ۱۵۳۶ به ۲ استفاده خواهیم کرد. پس از کاهش ابعاد به دو بعد، میتوانیم آنها را در یک نمودار پراکندگی ۲ بعدی نمایش دهیم.
جمع آوری داده ها # مجموعه دادهای که در این مثال استفاده شده است، نظرات کاربران در مورد غذاهای مختلف در آمازون میباشد. این مجموعه داده شامل 568,454 نظر در مورد غذاهای مختلف است که تا اکتبر 2012 توسط کاربران آمازون ثبت شدهاند.
...
برای انجام وظایف پیچیدهای مثل نوشتن یونیت تست برای کد پایتون بهتر است از روش پراپمت چند مرحله ای یا chain of thoughts استفاده کنیم. برخلاف یک پرامپت تکی، یک پرامپت چند مرحلهای متن را از GPT تولید کرده و سپس آن متن را به پرامپتهای بعدی میدهد.
این روش میتواند در مواردی که میخواهید GPT قبل از پاسخ دادن به موضوع فکر کند یا قبل از انجام کاری ابتدا برای آن برنامهریزی کند، مفید باشد.
...