CrewAI Blog

# Xây dựng Quy trình làm việc Đa Tác tử AI với Cerebras và CrewAI ## Giới thiệu Trong bài viết này, chúng ta sẽ khám phá cách xây dựng một quy trình làm việc đa tác tử AI (multi-agent workflow) sử dụng **Cerebras** - nền tảng phần cứng AI tốc độ cao, kết hợp với **CrewAI** - framework quản lý tác tử AI. Mục tiêu là tạo ra một hệ thống các tác tử AI có thể cộng tác, giao tiếp và thực hiện các nhiệm vụ phức tạp một cách hiệu quả. ## Tổng quan về Cerebras và CrewAI ### Cerebras Cerebras là công ty chuyên phát triển phần cứng AI với Wafer-Scale Engine (WSE) - chip xử lý lớn nhất thế giới. Cerebras cung cấp: - Tốc độ xử lý cực nhanh cho các mô hình AI - Khả năng huấn luyện và suy luận (inference) hiệu quả - Hỗ trợ các mô hình ngôn ngữ lớn (LLM) ### CrewAI CrewAI là framework mã nguồn mở cho phép: - Tạo và quản lý nhiều tác tử AI - Xác định vai trò, mục tiêu và nhiệm vụ cho từng tác tử - Thiết lập quy trình làm việc cộng tác giữa các tác tử ## Cài đặt môi trường ```bash # Cài đặt CrewAI pip install crewai # Cài đặt thư viện Cerebras pip install cerebras-cloud-sdk # Cài đặt các thư viện hỗ trợ pip install langchain langchain-community ``` ## Cấu hình Cerebras ```python import os from cerebras.cloud.sdk import Cerebras # Thiết lập API key os.environ["CEREBRAS_API_KEY"] = "your-cerebras-api-key" # Khởi tạo client Cerebras client = Cerebras() # Cấu hình model model_config = { "model": "cerebras/llama3.1-8b", "temperature": 0.7, "max_tokens": 2000 } ``` ## Xây dựng các Tác tử AI với CrewAI ### 1. Tác tử Nghiên cứu (Researcher Agent) ```python from crewai import Agent, Task, Crew, Process researcher = Agent( role="Chuyên gia Nghiên cứu AI", goal="Thu thập và phân tích thông tin về các xu hướng AI mới nhất", backstory="Bạn là một nhà nghiên cứu AI giàu kinh nghiệm, chuyên phân tích các công nghệ mới", verbose=True, allow_delegation=False, llm_config={ "provider": "cerebras", "model": "cerebras/llama3.1-8b", "temperature": 0.5 } ) ``` ### 2. Tác tử Phân tích (Analyst Agent) ```python analyst = Agent( role="Chuyên gia Phân tích Dữ liệu", goal="Phân tích dữ liệu và đưa ra insights có giá trị", backstory="Bạn là chuyên gia phân tích dữ liệu, có khả năng phát hiện patterns và trends", verbose=True, allow_delegation=True, llm_config={ "provider": "cerebras", "model": "cerebras/llama3.1-8b", "temperature": 0.3 } ) ``` ### 3. Tác tử Viết báo cáo (Writer Agent) ```python writer = Agent( role="Chuyên gia Viết Báo cáo", goal="Tạo báo cáo chuyên nghiệp từ dữ liệu phân tích", backstory="Bạn là người viết báo cáo xuất sắc, biết cách trình bày thông tin phức tạp một cách dễ hiểu", verbose=True, allow_delegation=False, llm_config={ "provider": "cerebras", "model": "cerebras/llama3.1-8b", "temperature": 0.7 } ) ``` ## Định nghĩa Nhiệm vụ (Tasks) ```python # Nhiệm vụ Nghiên cứu research_task = Task( description="Nghiên cứu các xu hướng AI mới nhất trong năm 2024, tập trung vào các lĩnh vực: NLP, Computer Vision, và Reinforcement Learning", expected_output="Danh sách 5 xu hướng AI quan trọng nhất với mô tả chi tiết", agent=researcher ) # Nhiệm vụ Phân tích analysis_task = Task( description="Phân tích dữ liệu từ nghiên cứu, xác định các patterns và đưa ra dự đoán về tương lai", expected_output="Báo cáo phân tích với 3 insights chính và dự đoán xu hướng", agent=analyst ) # Nhiệm vụ Viết báo cáo writing_task = Task( description="Tạo báo cáo tổng hợp từ kết quả nghiên cứu và phân tích", expected_output="Báo cáo hoàn chỉnh gồm: tóm tắt, phân tích chi tiết, và khuyến nghị", agent=writer ) ``` ## Tạo Crew và Thực thi ```python # Tạo Crew với các tác tử và nhiệm vụ crew = Crew( agents=[researcher, analyst, writer], tasks=[research_task, analysis_task, writing_task], process=Process.sequential, # Thực hiện tuần tự verbose=True ) # Khởi chạy quy trình làm việc result = crew.kickoff() print("Kết quả quy trình làm việc:") print(result) ``` ## Tối ưu hóa với Cerebras ### 1. Sử dụng Batch Processing ```python def process_batch_with_cerebras(tasks, batch_size=5): """Xử lý batch các nhiệm vụ với Cerebras""" results = [] for i in range(0, len(tasks), batch_size): batch = tasks[i:i+batch_size] batch_results = [] for task in batch: response = client.chat.completions.create( model="cerebras/llama3.1-8b", messages=[ {"role": "system", "content": task.system_prompt}, {"role": "user", "content": task.user_prompt} ], temperature=0.7, max_tokens=2000 ) batch_results.append(response.choices[0].message.content) results.extend(batch_results) return results ``` ### 2. Caching với Cerebras ```python from functools import lru_cache @lru_cache(maxsize=100) def cached_cerebras_call(prompt, model="cerebras/llama3.1-8b"): """Cache kết quả từ Cerebras để tối ưu hiệu suất""" response = client.chat.completions.create( model=model, messages=[{"role": "user", "content": prompt}], temperature=0.7, max_tokens=2000 ) return response.choices[0].message.content ``` ## Ví dụ Ứng dụng Thực tế ### Hệ thống Phân tích Thị trường Chứng khoán ```python # Tạo các tác tử chuyên biệt market_researcher = Agent( role="Nhà phân tích Thị trường", goal="Thu thập dữ liệu thị trường chứng khoán và tin tức tài chính", backstory="Chuyên gia phân tích thị trường với 10 năm kinh nghiệm", llm_config={"provider": "cerebras", "model": "cerebras/llama3.1-8b"} ) risk_analyst = Agent( role="Chuyên gia Quản lý Rủi ro", goal="Đánh giá rủi ro và đề xuất chiến lược đầu tư", backstory="Chuyên gia quản lý rủi ro với kiến thức sâu về tài chính", llm_config={"provider": "cerebras", "model": "cerebras/llama3.1-8b"} ) # Định nghĩa nhiệm vụ market_task = Task( description="Phân tích xu hướng thị trường chứng khoán trong tuần qua", expected_output="Báo cáo xu hướng thị trường chi tiết", agent=market_researcher ) risk_task = Task( description="Đánh giá rủi ro cho danh mục đầu tư hiện tại", expected_output="Báo cáo rủi ro và khuyến nghị", agent=risk_analyst ) # Tạo Crew trading_crew = Crew( agents=[market_researcher, risk_analyst], tasks=[market_task, risk_task], process=Process.hierarchical, # Quy trình phân cấp verbose=True ) # Thực thi trading_result = trading_crew.kickoff() ``` ## Lưu ý và Best Practices 1. **Tối ưu hóa Prompt**: Thiết kế prompt rõ ràng, cụ thể cho từng tác tử 2. **Quản lý Token**: Sử dụng `max_tokens` phù hợp để tránh lãng phí tài nguyên 3. **Error Handling**: Implement retry logic cho các lỗi API 4. **Monitoring**: Log và monitor hiệu suất của từng tác tử 5. **Testing**: Test kỹ từng tác tử riêng lẻ trước khi tích hợp ## Kết luận Việc kết hợp Cerebras và CrewAI tạo ra một nền tảng mạnh mẽ cho việc xây dựng các quy trình làm việc đa tác tử AI. Cerebras cung cấp tốc độ xử lý vượt trội, trong khi CrewAI quản lý logic phối hợp giữa các tác tử. Hệ thống này có thể được áp dụng trong nhiều lĩnh vực như phân tích thị trường, nghiên cứu khoa học, và tự động hóa quy trình kinh doanh.

🕐 20/07/2026 12:09 📰 CrewAI Blog ✅ Đã dịch sang tiếng Việt

Trong hướng dẫn này, chúng ta sẽ tạo một quy trình làm việc đa tác tử AI đơn giản, nơi một tác tử nghiên cứu các công nghệ mới nổi trong một lĩnh vực hoặc chủ đề nhất định bằng cách sử dụng CrewAI và Cerebras.

Cerebrasinference là nhanh nhất thế giới, và chúng tôi đang cung cấp năng lượng cho thế hệ ứng dụng AI tiếp theo. Với Cerebras Inference API, bạn có thể chạy Llama3.1 8B và Llama3.1 70B nhanh hơn 10 lần so với trên GPU. Quá trình suy luận của chúng tôi chạy trên Wafer Scale Engine 3 (WSE3), phần cứng tùy chỉnh của Cerebras được thiết kế cho AI.

Hãy tham gia cùng chúng tôi trong việc xây dựng các ứng dụng sáng tạo, đẳng cấp tiếp theo với tốc độ suy luận chưa từng thấy. Bắt đầu với Cerebras tại đây:cloud.cerebras.ai

CrewAI là một framework mã nguồn mở để xây dựng và điều phối các quy trình làm việc đa tác tử AI. Nó cho phép các nhà phát triển định nghĩa các tác tử tự động với vai trò, mục tiêu và câu chuyện nền cụ thể. Các tác tử này có thể sử dụng công cụ, xử lý nhiệm vụ và tương tác với nhau để hoàn thành các mục tiêu phức tạp.

Được hỗ trợ bởi các mô hình ngôn ngữ (LLM), CrewAI đơn giản hóa việc phát triển các ứng dụng AI yêu cầu sự phối hợp giữa nhiều tác tử, giúp việc xây dựng các hệ thống AI tinh vi và có khả năng mở rộng trở nên dễ dàng hơn.

Đảm bảo bạn có những điều sau trước khi bắt đầu:

Một khóa API Cerebras Inference. Đặt nó trong tệp.env của bạn như sau:

Cài đặt các gói crewai và crewai-tools. Cài đặt chúng bằng lệnh này:

Trong CrewAI, một agent là một thực thể tự động thực hiện các task dựa trên role, goal và backstory đã được định nghĩa. Các agent có thể sử dụng công cụ và được hỗ trợ bởi các mô hình ngôn ngữ (LLM).

Một Task trong CrewAI đại diện cho một đơn vị công việc được giao cho một agent.

Bây giờ, hãy thiết lập Crew và chạy quy trình.

Một Crew là một tập hợp các agent và task làm việc cùng nhau để thực thi một quy trình. Nó đóng vai trò như người điều phối, quản lý luồng công việc giữa các agent theo một mẫu quy trình đã chỉ định.

Bạn có thể tìm thấy mã hoàn chỉnh kết hợp tất cả các bước trong GitHub Repository này.

Đầu ra sẽ là một báo cáo gồm 3 đoạn văn về các công nghệ tác tử AI mới nổi cho năm 2024, được tạo bởi research agent sử dụng Cerebras LLM.

Bạn cũng có thể xem video hướng dẫn đầy đủ về cùng mã này tại đây:

Bằng cách tích hợp tốc độ suy luận cực nhanh của Cerebras với framework đa tác tử linh hoạt của CrewAI, các nhà phát triển có thể xây dựng các ứng dụng AI tinh vi thực hiện các tác vụ phức tạp một cách hiệu quả. Sự kết hợp này đặc biệt mạnh mẽ cho các ứng dụng yêu cầu nghiên cứu chuyên sâu, nơi tốc độ và khả năng mở rộng là rất quan trọng.

📎 Nguồn gốc: CrewAI Blog Xem bài gốc →