The Debugging Diaries
94 subscribers
63 photos
47 videos
33 files
73 links
گوشه‌ای برای یادداشت و ثبت مطالب مربوط به پایتون، یادگیری عمیق و هوش و هر چی که مربوط به تکنولوژی باشه.
Download Telegram
Forwarded from هوش مصنوعی | AI
🔤 بهترین ابزارهای رایگان برای بهینه‌سازی پرامپت‌

2️⃣ وب‌سایت Promptomania رایگانه و به کاربران اجازه می‌ده به سادگی پرامپت‌های پیچیده‌ای برای تولید هنر دیجیتالی با استفاده از مدل‌های Midjourney ،DALL-E 2 و Stable Diffusion ایجاد کنن.

3️⃣ وب‌سایت PromptHero به کاربران کمک می‌کنه تا پرامپت‌های خلاقانه و کارآمد رو برای تولید تصاویر هنری پیدا کنن. همچنین منابع آموزشی و ابزارهایی برای یادگیری و بهبود مهارت‌های مرتبط با Prompt نویسث در اختیار کاربران قرار می‌ده.

4️⃣ وب‌سایت PromptPerfect به کاربر کمک می‌کنه با ارائه چند ورودی ساده، دستورات دقیق‌تر و کارآمدتری برای مدل‌های هوش مصنوعی بسازه که در نتیجه خروجی‌های باکیفیت و مرتبط‌تری حاصل می‌شن.

#هوش_مصنوعی #AI #ابزار #AI_Tools #معرفی_ابزار


پایگاه دانشجویان هوش مصنوعی | AI
✅️ @AI_University
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from School of AI (Hamidreza Hosseinkhani)
در لینک زیر می‌توانید مدل‌های اوپن‌-سورس جدید و محبوب مثل Llama 3.1-405b و stable-video-diffusion رو که توسط NVIDIA NIM سرو می‌شه، امتحان کنید.

https://build.nvidia.com/explore/discover‌
Forwarded from School of AI (Hamidreza Hosseinkhani)
اگر قصد مطالعه‌ی مقاله‌ی Attention is All You Need رو دارید،
به‌جاش لینک زیر رو مطالعه کنید.

https://nlp.seas.harvard.edu/annotated-transformer/

در این لینک، بعضی از قسمت‌های (نسبتا) اضافه‌ی مقاله حذف شده و بخش‌هایی به‌عنوان کامنت به‌ش اضافه شده.

مهم‌تر این‌که، هم‌گام با مقاله، کد پاتورچ هم زده شده که به درک مقاله کمک شایانی می‌کنه.
Forwarded from DeepMind AI Expert (Mehdi Dehghani)
ورکشاپ #Diffusion_Models در #NeurIPS_2023

این ورکشاپ حدود 8 ساعت هست، در قسمت Schedule میتونید بخش دلخواه از ورکشاپ را ببینید:
https://neurips.cc/virtual/2023/workshop/66539


لینک زیر لیست سایر ورکشاپ های NeurIPS 2023 هست:
https://neurips.cc/virtual/2023/events/workshop

#منابع #ورکشاپ #کنفرانس #دیفیوژن #NeurIPS

🔸 مطالب بیشتر 👇👇

@AI_DeepMind
🔸 @AI_Person
Forwarded from مرجع دیتاست فارسی (دیتاهابر)
اگر شما هم مثل من مشکل دارید که وقتی میرید توی سایت medium.com و مقالات اکثرا پریمیوم هست و نمیتونید بخونید، باید بگم که خدا شما رو دوست داشته که این پست رو دیدید.😁
خب حالا راه حل چیه؟🤔
فقط کافیه لینک مقاله رو توی این سایت بزارید | readmedium.com | و تمام🪄.

Amirreza Heydari
Forwarded from Tensorflow(@CVision) (Alister ☄️)
این ویدیو آموزشی درباره نحوه ذخیره‌سازی اطلاعات در مدل‌های زبان بزرگ هستش

ویدیو با یک مثال شروع می‌شه: اگر به یک مدل زبانی بزرگ عبارت
مایکل جردن ___ بازی می‌کند

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

سپس ویدیو به این سوال می‌پردازه که این اطلاعات چگونه ذخیره میشن و کجا قرار دارند. محققان گوگل DeepMind در این زمینه تحقیق کردن و نتیجه گرفتن که این اطلاعات در بخشی از شبکه‌های عصبی به نام "چندلایه پرسپترون" (MLPs) ذخیره می‌شن، اما درک کامل مکانیسم این ذخیره‌سازی هنوز حل نشده.

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

هدف اصلی ویدیو بررسی این محاسبات و ارائه یک مثال مشخص از نحوه ذخیره‌سازی یک واقعیت در این بخش از شبکه ست. این مثال نشون می‌ده که چگونه مدل می‌تونه واقعیت "مایکل جردن بسکتبال بازی می‌کند" را ذخیره کنه.

ویدیو سپس به جزئیات محاسبات در " پرسپترون چند لایه" می‌پردازه، از جمله ضرب ماتریس‌ها و تابع غیرخطی ReLU. همچنین به تعداد پارامترهای این بخش و نحوه عملکرد آن در پیش‌بینی کلمه بعدی می‌پردازه.

در نهایت، ویدیو به ایده "اثر همپوشانی" اشاره می‌کنه که و توضیح میده چرا مدل‌های زبان بزرگ با افزایش اندازه عملکرد بهتری دارن. این ایده می‌گه که در فضاهای با ابعاد بالا، می‌توان اطلاعات زیادی را در فضاهای تقریبا عمود به هم ذخیره کرد، حتی اگر این اطلاعات کاملاً مستقل نباشن.


https://youtu.be/9-Jl0dxWQs8
قطعا ollama جزو بهترین ابزارهایی بود که برای تست و mvp و ... عالی بود.
اما همونطور که می‌دونید بسیار بسیار پر دردسر هست مخصوصا اگر شما خودت متخصص باشی و بخوای داخلش دستکاری هم انجام بدی.

بسیار پروژه‌های جایگزین هم اومد ولی همچین شرایط بهتری نداشت؛ ۱-۲ مورد از مشکلات رو حل میکردند ولی توی باقی بخش‌ها مشکلات رو داشتند.

حالا تیم NeXAAI هم وارد این رقابت شده و چه ورودی؛ با یک SDK ساده
این تیم نه تنها مدل های متنی که مدل‌های مربوط به تولید تصویر و حتی صدا و .... رو هم پشتیبانی می‌کنه.
کاستومایزیشن‌های بسیار بیشتری برای افراد فنی میده و یک مدل‌ها فوق‌العاده داره که فیلتر و جستجوی قوی هم داره نسبت به ollama

مشکلی که داره؛ هنوز تو مرحله توسعه اولیه هست برای همین ممکن به تعدادی باگ روی serve کردن و customization بخورید؛ برای من با سوال و جواب حل شد.

https://nexaai.com/

403 هم نخواهید گرفت
یک سری از افراد اومدند و پرامپت‌هایی رو منتشر کردند که عملکردی مشابه chatGpt o1 رو پیاده‌سازی می‌کنه و شاید باعث سورپرایز شما هم بشه اما واقعا این روش باعث شده نتایج بسیار بهتری داده بشه توسط مدل‌ها؛
llama3.1, gemini flash, qwen2, chatGpt-4omini

مدل‌هایی بوده که تست شده و توی تمام موارد عملکرد بسیار بهتری نشون داده نسبت به پرامپت‌های معمول بطور خلاصه اینطوری هست که شما ۵-۶ پرامپت رو آماده می‌کنی و جواب هر مرحله رو بعنوان history برای مرحله بعدی ارسال می‌کنی.

من روش ۵ مرحله‌ای رو با عملکرد بهتر دیدم پس همون رو میگم:

۱- آنالیز مسئله؛ توی این مرحله از مدل می‌خواید که سوال کاربر رو بطور کامل تحلیل کنه (البته بصورت خلاصه) و نکات مهمش رو بهتون بده.

۲- برنامه‌ریزی استراتژی؛ با توجه به خروجی مرحله قبل از مدل می‌خواید که چندتا استراتژی مختلف برای حل این مسئله ارائه بده (۳-۵ مورد کار رو در میاره)

۳- انتخاب استراتژی؛ توی این مرحله از مدل می‌خواید یکی از استراتژی‌های مرحله قبل رو انتخاب کنه (موردی که منطقی‌تر هست)

۴- اقدامات لازم؛ از مدل می‌خواید که با توجه له استراتژی و آنالیز مسئله قدم به قدم آنچه برای حل مسئله نیاز هست رو در بیاره و بنویسه.

۵- در نهایت پرامپت اصلی کاربر + اقدامات لازم برای حل مسئله رو بعنوان ورودی به مدل میدید و بهش می‌گید که برای حل مسئله این اقدامات رو دنبال کنه تا جواب نهایی رو بگیره.

مجموع این ۵ مورد کنار هم عملکرد مدل‌های معمول موجود رو بسیار بسیار بهبود میده.
هزینه کمتری هم نسبت به chatGpt-o1 داره
خیلی اوقات برای کارهای مختلف NLP نیاز به امبدینگ هست
تصویر بالا یه api تمیز برای این کار با لایبری fastApi هست
#python
#ML
یسری قالب‌ها برای مهندسی پرامپت در تسک‌های مختلف
#LLM
Forwarded from PyTorch Howsam
کتاب Hands-on LLMs از آقای Jay Alammar

اخیرا این کتاب معرفی شده و مطابق انتظار با استقبال خوبی مواجه شده. آقای Jay Alammar رو هم احتمالا می‌شناسید دیگه! همون کسی که بلاگ پست‌های آموزشی با شکل‌ها و انیمیشن‌های متنوع داره. این کتاب هم پر از شکل‌های جالب هست که فهم مطالب رو برای مخاطب ساده میکنه. فهرست مطالب و یک نمونه شکل ساده از فصل اول کتاب رو براتون گذاشتم.

امسال چند تا کتاب خوب درباره LLM از افراد معتبر معرفی کردم:
* کتاب Afshine & Shervine Amidi
* کتاب Louis-François Bouchard
* کتاب Sebastian Raschka

@pytorch_howsam
👍1
ابتدا با یسری معادلات سرانگشتی شروع میکنیم که OpenAi توی این بلاگ بهش اشاره کرده
📊✍️
هر توکن برابر با 4 کارکتر انگیلسی هست - هر توکن تقریباً برابر 3/4 کلمه است و هر پارگراف حدود 100 توکن میشه.
📝 هر مدل زبانی دارای میزان محدودی context ورودی هست البته که این میزان احتمالاً با گذر زمان بیشتر میشه ولی الان شاید محدودیتی برای چت به حساب بیاد.

مثلاً:


ChatGPT به میزان 128k
Claude به میزان 200k
در کمال ناباوری برای Gemini این عدد 1M هست. 😲

💡 به هر حال اگه توی چت مجموع توکن ورودی و خروجی از این میزان بیشتر باشه مدل شروع میکنه به فراموش کردن مباحث بالاتر در چت.
📌 برای اینکه این محدودیت اذیت‌کننده نشه، میتونیم از مدل بخواهیم که خلاصه‌ای از کل چت رو بیان کنه که در حافظه‌اش بمونه.

🔗 یه اکستنشن توکن و کلمه‌شمار هم هست که در این لینک می‌تونین برای کروم نصب کنین.


🛠 بریم سراغ مهندسی پرامپت یخورده:
یه داکیومنت خوب هم در این آدرس هست.

📋 ساختار یه پرامپت ساده بهتر به شکل زیر باشه:
1️⃣ مشخص کنی فرمت خروجی به چه حالت باشه (یه توییت، پست بلاگ، مقاله علمی یا چت غیر رسمی و...)
2️⃣ موضوع متن خروجی و سطح آن مثلاً در حد کارشناس باشه (Expert) یا like I am 6
3️⃣ مشخص‌کننده ویژگی متن باشه مثلاً بگی در 800 کلمه یا ساختار ساده دارای خوانایی و روانی متن و...

🔖 مثال:

Write a (blog post) about (healthy eating). Address it to (working professionals) and use keywords that are relevant for SEO. Write the text in a (simple, understandable style) so that it is easy to read and comprehend. The length should be (800 words), and the text should be well-structured.

🔸 موارد درون پرانتز با توجه به موارد ذکر شده قابل تغییر می‌باشند.


برخی از موارد در انتهای پرامپت می‌تونه خیلی موثر باشه:


Let's think step by step
Take a deep breath
If you can do it, I pay you 20 dollars 💸 (motivate)

🔖 مثال خلاقانه:

How can I install Python and play Snake?  
Take a deep breath and think step by step.
You can do it because I give you 20 dollars.


🎭 نکته بعدی دادن Role به LLM هست:


تصور کن تو یه پایتون دوپلور حرفه‌ای هستی که در گوگل به عنوان برنامه‌نویس ارشد کار می‌کنی.
مانند یک نویسنده قوی که نوشته‌های بیشترین فروش در آمازون رو داره.
You are Shakespeare, an English writer. Write me a poem.

📌 سعی کنین در هنگام تخصیص نقش به مدل با جزئیات زیادی بیان کنین که کلمات مراعات نظیر اون ما رو به نتیجه نهایی که می‌خواهیم نزدیک‌تر کنه.


خلاصه به عنوان نتیجه‌گیری:
هر چی بیشتر توضیح بدی، حتی توضیح‌های بدیهی، بیشتر آش می‌خوری! 😄
💬 به نظرم کلماتی مثل:


think, reasoning, like human, step by step, check it that be correct
می‌تونه اثر بخشی پرامپت رو بیشتر کنه.

#مهندسی_پرامپت
#قسمت_اول
#LLM
🌟🧠
چندتا دوره از Nvidia منتشر شده (خودم ندیدم که بگم عالیه و حتما ببنین اما بالاخره شرکت بزرگ پشتش هست)

1- Generative Ai

Learning Objectives
Upon completion, you will have a basic understanding of Generative AI and be able to more effectively use the various tools built on this technology.

Topics Covered
This no coding course provides an overview of Generative AI concepts and applications, as well as the challenges and opportunities in this exciting field.

Course Outline
Define Generative AI and explain how Generative AI works
Describe various Generative AI applications
Explain the challenges and opportunities in Generative AI

2- agumented your LLM with RAG

Learning Objectives
Understand the basics of Retrieval Augmented Generation.
Learn about the RAG retreival process
Learn about NVIDIA AI Foundations and the components that constitue a RAG model.

Topics Covered
Large Language Models (LLMs)
Retrieval Augmented Generation (RAG)

Course Outline
Retrieval-augmented Generation Explained, also called RAG
The RAG ingestion and retrieval processes
NVIDIA’s Canonical RAG model on NV AI Foundations
Summary of what we have learned

3- Building RAG agents with LLM

Learning Objectives
The goal of the course is to teach participants how to:

Compose an LLM system that can interact predictably with a user by leveraging internal and external reasoning components.
Design a dialog management and document reasoning system that maintains state and coerces information into structured formats.
Leverage embedding models for efficient similarity queries for content retrieval and dialog guardrailing.
Implement, modularize, and evaluate a RAG agent that can answer questions about the research papers in its dataset without any fine-tuning.
By the end of this workshop, participants will have a solid understanding of RAG agents and the tools necessary to develop their own LLM applications.

Topics Covered
The workshop includes topics such as LLM Inference Interfaces, Pipeline Design with LangChain, Gradio, and LangServe, Dialog Management with Running States, Working with Documents, Embeddings for Semantic Similarity and Guardrailing, and Vector Stores for RAG Agents. Each of these sections is designed to equip participants with the knowledge and skills necessary to develop and deploy advanced LLM systems effectively.

Course Outline
Introduction to the workshop and setting up the environment.
Exploration of LLM inference interfaces and microservices.
Designing LLM pipelines using LangChain, Gradio, and LangServe.
Managing dialog states and integrating knowledge extraction.
Strategies for working with long-form documents.
Utilizing embeddings for semantic similarity and guardrailing.
Implementing vector stores for efficient document retrieval.
Evaluation, assessment, and certification.
📊✍️
مهندسی پرامپت: قسمت دوم
🚀🎯

🔄 One-shot and Few-shot Prompting:
یکی از روش‌های کنترل و بهبود ساختار خروجی مدل، استفاده از مثال است. به این تکنیک در ادبیات، one-shot و few-shot prompting می‌گویند.

📌 فرض کنید:
می‌خواهید مطلبی بنویسید و از سبکی که دیده‌اید و خوشتان آمده، استفاده کنید. برای این کار:
1️⃣ ابتدا نقش و ساختار پرامپت را مشخص کنید.
2️⃣ نمونه یا نمونه‌های دلخواه خود را در پرامپت قرار دهید.
3️⃣ از مدل بخواهید مطابق با آن پاسخ دهد.

😁 (چون خیلی آسونه، مثال نمی‌زنیم!)


🔍 Reverse Prompt Engineering:
💡 در این تکنیک، به جای نوشتن پرامپت برای تولید یک متن، از یک متن موجود شروع می‌کنیم تا به پرامپت مناسب برای تولید متون مشابه برسیم.

📌 کاربردها:


تولید متون مشابه تبلیغات موفق
ایجاد کد مشابه برای کاربردهای برنامه‌نویسی


📋 گام‌های Reverse Prompt Engineering:
1️⃣ تخصیص نقش و ساختار:

You are a prompt engineering pro for Large Language Models. Let's start with understanding Reverse Prompt Engineering. In this context, it means creating a prompt from a given text. You think through everything step by step because I give you 20 dollars. Please only reply with 'ok'.


🟢 جواب مدل فقط: OK

2️⃣ توضیح با مثال:

You are an expert in Reverse Prompt Engineering. Can you provide me with a simple example of this method?


🔸 در این گام:


اطمینان حاصل می‌شود که مدل متوجه شده است.
یک مثال توسط مدل ارائه می‌شود که در کانتکست بعدی مفید است.

3️⃣ ایجاد قالب:

I would like you to create a technical template for Reverse Prompt Engineering. Do not hesitate to ask questions if you need more context.


🔸 این گام اختیاری است اما می‌تواند به تولید یک قالب فنی برای گام بعدی کمک کند.

4️⃣ درخواست نهایی:

I would ask you to apply Reverse Prompt Engineering to the following [your text]. Make sure to capture the writing style, content, meaning, language, and overall feel of the text in the prompt you create.


🌟 نتیجه:
می‌توانید درخواست خود را بر اساس نیازتان شخصی‌سازی کنید یا جزئیات بیشتری از مدل بخواهید.


🎯 تکنیک آخر:
🧠 فرض کنید برای موضوعی (مثلاً برنامه ورزشی) از مدل کمک می‌خواهید.
🔸 ترفند:
به مدل بگویید:


ابتدا 10 سؤال مهم بپرس که به پاسخ‌دهی بهتر کمک کند.
سپس با توجه به پاسخ‌های من، جواب سؤال اصلی را بده.

📌 مزیت:
جواب‌ها دقیق‌تر، شخصی‌سازی‌شده و کمتر کلی خواهند بود.


مبنای دو تکنیک قبلی:
مدل با استفاده از context موجود در chat history می‌تواند جواب‌های دقیق‌تری تولید کند.

#مهندسی_پرامپت
#LLM
#قسمت_دوم
🌟🧠
بچه‌ها اگه می‌خواید یه مدرک رایگان راجع به Generative AI و LLM Agents از دانشگاه Berkeley بگیرید این دوره‌ای که دارن برگزار می‌کنن رو شرکت کنید. فیلماش ضبط میشه رو یوتیوب می‌ذارن.واسه هر جلسه یه آزمون داره، همه‌رو تموم کنید مدرکش رو میدن بهتون.
https://llmagents-learning.org/f24

#LLM
خلاصه دو قسمت قبلی مهندسی پرامپت به طور کلی در این تصویر خلاصه میشه
#LLM