کیمیاگر نرم‌افزار
42 subscribers
3 photos
15 links
اینجا کانالیه که مطالب وبلاگم و چیزهایی که به نظرم جالبه رو به اشتراک میذارم.
آدرس وبلاگم: https://hamidreza.tech
یوزرنیم تلگرامم: @mahdavipanah
Download Telegram
Channel name was changed to «کیمیاگر نرم‌افزار»
این کانال قبلا جایی بود که لینک مطالب وبلاگم رو میذاشتم. (حمیدرضا مهدوی پناه )
چندسالیه که هیچ فعالیتی توش نکردم. پست‌های قبلی رو پاک کردم تا از نوع شروع کنم.
جدیدا دارم NotebookLM رو تست میکنم. ازش استفاده میکنم برای خلاصه‌کردن و مرور مطالبی که درمورد سرمایه‌گذاری و بازارهای مالی و ... میخونم. دنیای جدیدیه واسم و بنابراین برام جالبه که بدونم ابزاری مثل NotebookLM چقدر میتونه توی یادگیری یه موضوع جدید کمک کنه.

ابزاریه که گوگل چندین سال پیش توسعه داده ولی جدیدا با آپدیت‌هاش دوباره توجه همه رو جلب کرده. یه ابزار آنلاینه که با AI و LLM میشه برای نت‌برداری،‌ خلاصه‌کردن و تحقیق ازش استفاده کرد. به هوش مصنوعی Gemini گوگل وصله.

خیلی ساده میتونید بهش متن، لینک، ویدیوی یوتیوب، فایل پی‌دی‌اف و ... بدید و همه رو کنار هم میذاره و بعد میتونید ازش درمورد اون‌ها سوال کنید، ‌ازش بخواید که خلاصش رو بهتون بده و یا حتی یه پادکست صوتی بهتون میده که دو نفر دارن درمورد اون
مطالب صحبت میکنن و شما میتونید بهش گوش کنید.

https://notebooklm.google.com/
امروز کاربرد خیلی مفیدی از LLM رو توی یه وبسایت دیدم. گوگل برای سرویس‌هاش ابزار جدیدی اضافه کرده به نام Help guide. کارکردش اینجوریه که وقتی دنبال یه چیزی میگردی (مثلا unsubscribe کردن یه سرویس گوگل) و راهتون به یه لینک توی سایت support.google.com میخوره، همونجا کنار اون توضیحات یه صفحه چت باز میشه که میپرسه آیا میخوای کمکت کنم و شروع میکنی باهاش حرف زدن و بهت یه سری دکمه میده که مثلا آیا مطمئنی و میزنی yes و ...
در نهایت اون کار به جای این که ۵ دقیقه زمان بگیره، ۱۰ ثانیه زمان میبره.

از زمانی که کامپیوترهای اولیه درست شدن تا امروز، دائما نحوه‌ی تعامل ما با اونها تغییر کرده. به نظرم LLM ها گام مهمی در تعامل ما با کامپیوترها هستن، جدای کاربردهای دیگه‌ای که دارن (مثلا تحقیقات علمی، هنر و ...).

در آینده‌ی نه چندان دور، سرویس‌های آنلاین و وبسایت‌هایی میان که دیگه نیازی به داشبورد و تنظیمات ندارن و شما صرفا به صورت متنی یا صوتی کاری که میخواین رو انجام میدید.
کیمیاگر نرم‌افزار
امروز کاربرد خیلی مفیدی از LLM رو توی یه وبسایت دیدم. گوگل برای سرویس‌هاش ابزار جدیدی اضافه کرده به نام Help guide. کارکردش اینجوریه که وقتی دنبال یه چیزی میگردی (مثلا unsubscribe کردن یه سرویس گوگل) و راهتون به یه لینک توی سایت support.google.com میخوره،…
در ادامه‌ی این موضوع، نکته‌ی جالبی که به ذهنم رسید اینه که با امکاناتی که LLMهای مختلف در اختیار برنامه‌نویس‌ها میذارن چقدر داشتن یه API تمیز و استاندارد برای وبسایت و سرویسی که میسازی مهم میشه. چون اگه یه REST API خوب داشته باشی خیلی راحت میتونی به یه LLM وصلش کنی و دقیقا شبیه به ابزار Help guide گوگل، یه چت‌بات برای کاربردهای مختلف به وبسایتت اضافه کنی.

چندتا از سرویس‌هایی که قابلیت اضافه کردن chatbot به وبسایتت رو میدن اینها هستن:

- https://www.chatbase.co/
- https://botsonic.com/
- https://www.intercom.com/

این هم یه ویدئوی کوتاه که یاد میده چطوری میشه با Chatbase کار کرد:
https://www.youtube.com/watch?v=SNwqkdhv1HQ
این چهارنفر که توی MIT دوست و هم‌دانشگاهی بودن سال ۲۰۲۳ یه code editor ساختن به نام cursor که یه fork از ادیتور معروف VScodeبود که با LLM ها یه سری قابلیت‌ مثل تولید کد توسط AI و … میداد.

بعد از دو سال ارزش این کمپانی ده میلیارد دلار هست! با کمتر از ۲۰ تا کارمند.

برای این که مقایس این رقم دستتون بیاد هواپیمایی Turkish که چهارمین شرکت باارزش ترکیه هست دوازده میلیارد دلار می‌ارزه! با ۴۰ هزار کارمند!
🤯2
در مطلب جدید بلاگم، به مشکلات رایج در استفاده از this در جاوااسکریپت اشاره کردم و توضیح دادم که چطور استفاده از Arrow Functions می‌تونه مدیریت Context رو ساده‌تر و کدتون رو تمیزتر کنه:

https://hamidreza.tech/javascripts-this-keyword-and-arrow-functions
یه ترفند ساده ولی موثرِ نوشتن prompt برای ChatGPT اینه که از براکت استفاده کنید تا بهش بفهمونید که میخواید context بدید، یعنی مثلا لحن و یا اطلاعات جانبی رو منتقل کنید، برای مثال:

Write a speech [Tone: formal and inspiring] about the importance of teamwork.


Compose a blog post [Style: casual and conversational] about the benefits of remote work.


با این روش ChatGPT اطلاعاتی که داخل براکت میذارید رو با متن خود prompt قاطی نمیکنه.
👍1
کیمیاگر نرم‌افزار
یه ترفند ساده ولی موثرِ نوشتن prompt برای ChatGPT اینه که از براکت استفاده کنید تا بهش بفهمونید که میخواید context بدید، یعنی مثلا لحن و یا اطلاعات جانبی رو منتقل کنید، برای مثال: Write a speech [Tone: formal and inspiring] about the importance of teamwork.…
توی LLM ها یه پارامتری هست به نام temperature که میزان رندوم و متغیر بودن جواب مدل رو تعیین میکنه. این یه عدده بین صفر و یک هست که هرچقدر به صفر نزدیکتر باشه جواب‌هاش قابل‌پیش‌بینی‌تره و به واقعیت نزدیکتره (factual) و هرچقدر به یک نزدیک‌تر باشه جواباش خلاقانه‌تر و
غیرقابل‌پبیش‌بینی‌تره.

اینجوری کار میکنه که با هر ورودی (prompt) که به مدل میدی، دمای خروجی رو هم بهش میدی. برای مثال اگه ازش میخوای که یه شعر بگه بهتره که عدد دما رو نزدیک به یک بدی و اگه ازش یه سوال علمی میکنی عددی رو نزدیک به صفر بدی.

توی API ChatGPT این پارامتر قابل تنظیمه اما برای رابط کاربریش شما نمیتونید این عدد رو خودتون تعیین کنید. حالا یه ترفند وجود داره که با استفاده از براکت و واژه‌ی Temperature به مدل بفهمونی که چقدر خلاقانه‌تر جواب بده یا به واقعیت اهمیت بیشتری بده. مثلا:

Write a story about a robot exploring emotions. [temperature=1, style: imaginative and emotional]


دقت کنید که این Temperature با پارامتر Temperature که یکی از ورودی‌های پایه‌ای مدل هست متفاوته. این واژه فقط داره توی خود ورودی Prompt استفاده میشه که منظور رو به ChatGPT بفهمونه ولی کارکردش مشابه تنظیم کردن پارامتر Temperature در مدل نخواهد بود.