Chia Sẻ Khóa Học Build Một AI Agent Từ Đầu [Khóa 6104 A]
Tạo AI agent của riêng bạn! Xây dựng một command line messaging interface và một agent loop để liên tục tương tác với người dùng. Code tool từ đầu để truy xuất thông tin và generate hình ảnh từ Dall-E. Quản lý lịch sử trò chuyện để cung cấp context cho từng prompt. Tìm hiểu các design pattern và resource tiên tiến nhất để xây dựng các ứng dụng API dựa trên agent hiện đại.
1. Giới thiệu:
1.1. Giới thiệu: Tác giả giới thiệu khóa học bằng cách thảo luận về các điều kiện tiên quyết, bao gồm kiến thức về JavaScript và sự quen thuộc với API. Phần này cũng cung cấp các hướng dẫn thiết lập kỹ thuật, chẳng hạn như cài đặt Git và Node, và đăng ký một AI API account.
1.2. Tổng quan về AI Agents: Cung cấp tổng quan về project khóa học, đó là một agent có thể đọc từ Reddit, generate hình ảnh và cung cấp những câu chuyện cười ngẫu nhiên của bố. Phần này cũng thảo luận về các loại agent khác nhau, chẳng hạn như conversational agents and transactional agents, và cung cấp ví dụ về các trường hợp sử dụng của chúng.
2. Tổng quan về LLM:
2.1. Tổng quan về LLM: Giải thích large language model (LLM) là gì và nó khác với các mô hình AI khác như thế nào. Phần này cũng giới thiệu ý tưởng về transformers và tokenization và token limits trong LLM.
2.2. Tổng quan về các loại LLM: Thảo luận về các loại LLM khác nhau như GPT, Claude và Llama. Phần này giải thích khái niệm về weights trong các mô hình AI và cách chúng thiết yếu đối với chức năng của mô hình. Phần này cũng đề cập đến những hạn chế của LLM, bao gồmhallucinations và context window constraints.
2.3. OpenAI Hello World: Hướng dẫn thiết lập môi trường để sử dụng API của OpenAI và demo cách thực hiện một API call đơn giản để generate một response. Phần này cũng giải thích các tham số được sử dụng trong API cal, chẳng hạn như model và temperature, và chỉ cách xử lý response.
3. Memory:
3.1. Tổng quan về AI Chat với Memory: Giải thích rằng các one-off LLM call phù hợp với các tác vụ độc lập, trong khi các tương tác dựa trên chat được sử dụng để duy trì lịch sử và ngữ cảnh của cuộc trò chuyện. Phần này cũng đề cập đến tầm quan trọng của việc quản lý history và tokens trong các tương tác LLM dựa trên chat.
3.2. Các loại Chat Memory Message: Thảo luận về memory trong một ứng dụng chat, là tập hợp các tin nhắn trước đó trong cuộc trò chuyện. Phần này cũng đề cập đến các loại message khác nhau, bao gồm system messages, user messages, assistant messages và tool messages.
3.3. Memory & Token Limitation: Thảo luận về tầm quan trọng của bộ nhớ trong các hệ thống AI và cách nó cho phép khả năng theo dõi và tính liên tục của tác vụ. Phần này cũng giải thích những hạn chế của memory trong các mô hình ngôn ngữ và các chiến lược khác nhau để quản lý các memory constraint. Phần này cũng đề cập đến khái niệm retrieval-augmented generation (RAG) và tiềm năng của nó trong việc cải thiện memory và context trong các hệ thống AI.
3.4. Xây dựng một AI Chat với Memory: Giải thích cách triển khai một memory feature trong một ứng dụng chat bằng một file-based database. Và demo cách add và remove metadata khỏi messages và tạo các function để add và get messages từ database. Phần này cũng chỉ cách tích hợp memory feature vào chat interface bằng cách truy xuất các tin nhắn trước đó và truyền chúng đến LLM.
4. AI Agents:
4.1. Các loại AI Agent: Cung cấp các ví dụ về các loại agent khác nhau, bao gồm chat-based agents và task-based agents. Phần này thảo luận về các đặc điểm của agent, chẳng hạn như autonomous decision-making, task persistence và goal orientation. Phần này cũng giải quyết các câu hỏi của học viên về việc xác thực LLM responses và tác động tiềm tàng của các mô hình AI lớn hơn đối với các agent chuyên biệt.
4.2. Xây dựng một AI Agent: Trình bày cách add một user message vào database, hiển thị loader, get tất cả messages, chạy LLM với messages và tools, và add response vào chat messages. Phần này cũng thảo luận về cách xử lý các tool call và cung cấp một ví dụ về cách tạo một fake tool có tên là "get weather" và truyền cho agent.
4.3. Xây dựng một AI Agent Q&A: Thảo luận về tầm quan trọng của việc gửi tin nhắn theo thứ tự nhất định để ngăn AI khỏi lỗi. Phần này cũng giải thích cách sử dụng Zod function để mô tả mục đích của một tool và cách add reasoning để cải thiện quy trình ra quyết định của AI. Phần này cũng đề cập đến việc sử dụng token counting để quản lý token limits và tùy chọn set số lượng token tối đa cho response.
5. Function Calling:
5.1. Tổng quan về Function Calling: Thảo luận về cách xử lý bảo mật khi người dùng sử dụng một công cụ có thể truy cập dữ liệu của người dùng khác. Phần này cũng đưa ra các ví dụ về clear và ambiguous match trong tool calling và nhấn mạnh tầm quan trọng của clear descriptions các tool.
5.2. Tạo một Tool Runner: Demo cách tạo một tool runner function khớp lệnh gọi công cụ với hàm tương ứng và trả về kết quả. Phần này cũng trình bày cách save tool response trong chat history và handle looping qua các tool call.
6. Agent Loops:
6.1. Tổng quan về Agent Loops: Thảo luận về agent loops và cách chúng cho phép agent phản hồi câu trả lời cho LLM để có thể trả lời câu hỏi ban đầu và đưa ra phản hồi. Phần này cũng cung cấp các ví dụ về multi-step actions và cách xử lý các dependent action trong loop.
6.2. Coding the AI Agent Loop: Demo cách sử dụng một vòng lặp while để liên tục gửi tin nhắn đến model và nhận phản hồi cho đến khi đáp ứng được điều kiện cụ thể. Phần này cũng thảo luận về tầm quan trọng của việc lưu và truy xuất conversation histor bên trong loop.
7. Real Tools:
7.1. Fetching Dad Jokes: Giải thích cách tạo một tool để generate một dad joke ngẫu nhiên. Phần này demo cách define các tool function và định nghĩa tool tương ứng của chúng bằng TypeScript và Zod.
7.2. Tích hợp Reddit API: Hướng dẫn cách tạo một tool lấy các bài đăng mới nhất từ NBA subreddit.
7.3. Generate Dahl-E Image: Demo cách define image generation tool, thiết lập prompts parameter và hướng dẫn AI in generating prompt. Phần này cũng giải thích cách export tool và tích hợp vào tool runner.
7.4. Kết hợp các Tool thành một Agent: Demo cách kết hợp các tool để generate một hình ảnh meme từ một dad joke ngẫu nhiên. Phần này trình bày quá trình nhập prompt, lấy dad joke, generate image và nhận kết quả cuối cùng. Phần này cũng thảo luận về những hạn chế của tool và cách cải thiện nó.
7.5. Add System Prompt vào AI Agent: Demo cách add instruction và contex vào system prompt, chẳng hạn như cung cấp các rule để generate image và thay thế tên người nổi tiếng với các đặc điểm chung. Phần này cũng đề cập đến tầm quan trọng của việc đưa ngày hiện tại vào system prompt và cách xử lý lỗi và tối ưu hóa prompt.
8. Next Level:
8.1. Cải thiện Agents: Thảo luận về khái niệm RAG (Retrieval-Augmented Generation) và embeddings, là các numerical representation của text. Phần này cũng đề cập đến các chủ đề như human-in-a-loop, các chiến lược evaluation, safety mechanisms, integration patterns và các specialized agent.
8.2. Cải thiện Agents Q&A: Trả lời các câu hỏi của học viên về các công cụ và tài nguyên được đề xuất, bao gồm Hugging Face và Brain Trust, và thảo luận về những thách thức và cân nhắc khi sử dụng các dịch vụ AI từ các nhà cung cấp như OpenAI, Azure và AWS. Bài học kết thúc bằng một cuộc thảo luận ngắn về fine-tuning các model và cập nhật chúng khi cần thiết.
9. Kết thúc: Kết thúc khóa học bằng cách thảo luận về cách khóa học ứng dụng AI nâng cao được xây dựng dựa trên khóa học này.
NHẬN GET EBOOK TRÊN AMAZON THEO YÊU CẦU