Skip to content

Commit 11c853d

Browse files
authored
Merge pull request #385 from duongqvu/main
Added the Vietnamese version of README.
2 parents e1d40c5 + 10e92eb commit 11c853d

File tree

2 files changed

+146
-0
lines changed

2 files changed

+146
-0
lines changed

README.md

+1
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
[<img title="فارسی" alt="فارسی" src="https://cdn.staticaly.com/gh/hjnilsson/country-flags/master/svg/ir.svg" width="30">](docs/README-fa.md)
1919
[<img title="German" alt="German" src="https://cdn.staticaly.com/gh/hjnilsson/country-flags/master/svg/de.svg" width="30">](docs/README-de.md)
2020
[<img title="Indian" alt="Indian" src="https://cdn.staticaly.com/gh/hjnilsson/country-flags/master/svg/in.svg" width="30">](docs/README-in.md)
21+
[<img title="Vietnamese" alt="Vietnamese" src="https://raw.githubusercontent.com/hampusborgos/country-flags/main/svg/vn.svg" width="30">](docs/README-vn.md)
2122

2223

2324
# Objective

docs/README-vn.md

+145
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,145 @@
1+
# BabyAGI
2+
3+
# Mục tiêu
4+
5+
Script Python này là một ví dụ về hệ thống quản lý công việc được trí tuệ nhân tạo hỗ trợ.
6+
Hệ thống sử dụng OpenAI và cơ sở dữ liệu vector như Chroma hoặc Weaviate để tạo,
7+
ưu tiên và thực hiện các công việc. Ý tưởng chính đằng sau hệ thống này là nó tạo ra các
8+
đầu việc dựa trên kết quả của các nhiệm vụ trước đó và một mục tiêu đã được xác định trước.
9+
Sau đó, script sử dụng khả năng xử lý ngôn ngữ tự nhiên (NLP) của OpenAI để tạo ra các công việc
10+
mới dựa trên mục tiêu, và sử dụng Chroma/Weaviate để lưu trữ và truy xuất
11+
kết quả công việc trước đó để có bối cảnh (context). Đây là phiên bản rút gọn của
12+
[Task-Driven Autonomous Agent](https://twitter.com/yoheinakajima/status/1640934493489070080?s=20)
13+
(28 tháng 3 năm 2023).
14+
15+
Bản README này bao gồm:
16+
- [Cách script hoạt động](#how-it-works)
17+
- [Cách sử dụng script](#how-to-use)
18+
- [Các mô hình được hỗ trợ](#supported-models)
19+
- [Cảnh báo về việc chạy script liên tục](#continuous-script-warning)
20+
21+
22+
23+
# Cách script hoạt động<a name="how-it-works"></a>
24+
25+
Script này hoạt động bằng cách chạy một vòng lặp vô hạn và thực hiện các bước sau:
26+
1. Lấy công việc đầu tiên từ danh sách công việc.
27+
2. Gửi công việc đến agent thực thi, sử dụng API của OpenAI để hoàn thành công việc dựa trên bối cảnh.
28+
3. Bổ sung kết quả và lưu trữ nó trong [Chroma](https://docs.trychroma.com)/[Weaviate](https://weaviate.io/).
29+
4. Tạo công việc mới và sắp xếp lại mức độ ưu tiên của danh sách công việc dựa trên mục tiêu và kết quả của công việc trước đó.
30+
31+
32+
</br>
33+
34+
![image](https://user-images.githubusercontent.com/21254008/235015461-543a897f-70cc-4b63-941a-2ae3c9172b11.png)
35+
36+
Hàm `execution_agent()` sử dụng API của OpenAI. Nó nhận hai tham số: mục tiêu và công việc.
37+
Sau đó, nó gửi một yêu cầu đầu vào (prompt) đến API của OpenAI, và nhận kết quả trả về từ đó.
38+
Yêu cầu đầu vào (prompt) bao gồm mô tả công việc của hệ thống AI, mục tiêu và yêu cầu công việc.
39+
Kết quả sau đó được trả về dưới dạng chuỗi.
40+
41+
Hàm `task_creation_agent()` sử dụng API của OpenAI để tạo ra các công việc mới dựa trên mục tiêu
42+
và kết quả của công việc trước đó. Hàm nhận bốn tham số: mục tiêu, kết quả của công việc trước đó, mô tả công việc,
43+
và danh sách công việc hiện tại. Sau đó, nó gửi một yêu cầu đầu vào (prompt) đến API của OpenAI, và nhận danh sách
44+
công việc mới dưới dạng chuỗi. Hàm sau đó trả về các đầu việc mới dưới dạng danh sách các từ điển (dictionaries) chứa tên công việc.
45+
46+
Hàm `prioritization_agent()` sử dụng API của OpenAI để sắp xếp lại danh sách công việc dựa trên mức độ ưu tiên.
47+
Hàm nhận một tham số: ID của công việc hiện tại. Nó gửi một yêu cầu đầu vào (prompt) đến API của OpenAI,
48+
và nhận danh sách công việc đã được sắp xếp lại dưới dạng danh sách có số thứ tự.
49+
50+
Cuối cùng, script sử dụng Chroma/Weaviate để lưu trữ và truy xuất kết quả công việc để có bối cảnh.
51+
Script tạo một bộ sưu tập (collection) Chroma/Weaviate dựa trên tên bảng biểu được chỉ định trong biến TABLE_NAME.
52+
Chroma/Weaviate sau đó được sử dụng để lưu trữ kết quả của công việc trong bộ sưu tập,
53+
cùng với tên công việc và bất kỳ siêu dữ liệu (metadata) nào khác.
54+
55+
56+
# Cách sử dụng script<a name="how-to-use"></a>
57+
58+
Để sử dụng script, bạn cần thực hiện các bước sau:
59+
1. Clone repository bằng `git clone https://github.com/yoheinakajima/babyagi.git``cd` vào thư mục đã clone.
60+
2. Cài đặt các package cần thiết bằng lệnh: `pip install -r requirements.txt`
61+
3. Sao chép file *.env.example* thành *.env* bằng lệnh: `cp .env.example .env`. Đây là nơi bạn sẽ thiết lập các biến sau.
62+
4. Đặt API key của OpenAI vào biến OPENAI_API_KEY và OPENAI_API_MODEL. Để sử dụng với Weaviate, bạn cũng cần thiết lập thêm các biến bổ sung, chi tiết xem [ở đây](docs/weaviate.md).
63+
5. Đặt tên bảng biểu (table) mà kết quả công việc sẽ được lưu trữ vào biến TABLE_NAME.
64+
6. (Tùy chọn) Đặt tên của BabyAGI instance trong biến BABY_NAME.
65+
7. (Tùy chọn) Đặt mục tiêu của hệ thống quản lý công việc trong biến OBJECTIVE.
66+
8. (Tùy chọn) Đặt công việc đầu tiên của hệ thống trong biến INITIAL_TASK.
67+
9. Chạy script: `python babyagi.py`
68+
69+
Tất cả các giá trị tùy chọn ở trên cũng có thể được chỉ định khi chạy lệnh.
70+
71+
# Chạy script trong Docker container
72+
73+
Để chạy hệ thống trong Docker container, bạn cần cài đặt docker và docker-compose.
74+
Docker desktop là lựa chọn đơn giản nhất https://www.docker.com/products/docker-desktop/
75+
76+
Để chạy hệ thống trong một Docker container, thiết lập file *.env* như các bước ở trên và chạy lệnh sau:
77+
78+
docker-compose up
79+
80+
# Các mô hình được hỗ trợ<a name="supported-models"></a>
81+
82+
Script này hoạt động được với tất cả các mô hình của OpenAI, cũng như Llama và các biến thể của nó thông qua Llama.cpp.
83+
Mô hình mặc định là **gpt-3.5-turbo**. Để sử dụng một mô hình khác, chỉ định nó thông qua biến LLM_MODEL hoặc sử dụng giao diện dòng lệnh (command line).
84+
85+
86+
## Llama**
87+
88+
Llama yêu cầu cài đặt package llama-cpp. Bạn cũng cần tải về weights của mô hình Llama.
89+
90+
- **Không chia sẻ IPFS, magnet links, hoặc bất kỳ liên kết nào khác đến việc tải xuống mô hình ở bất kỳ nơi nào trong repository này, bao gồm trong issues, thảo luận hoặc pull requests. Chúng sẽ bị xóa ngay lập tức.**
91+
92+
Một khi bạn đã cài đặt và tải về các files cần thiết, đặt LLAMA_MODEL_PATH tới đường dẫn của mô hình cụ thể mà
93+
bạn muốn sử dụng. Để thuận tiện, bạn có thể liên kết `models` trong BabyAGI repo với thư mục chứa weights của
94+
mô hình Llama. Sau đó chạy script với `LLM_MODEL=llama` hoặc thêm `-l` argument.
95+
96+
# Cảnh báo về việc chạy script liên tục<a name="continuous-script-warning"></a>
97+
98+
Script này được thiết kế để chạy liên tục như một phần của hệ thống quản lý công việc.
99+
Chạy script này liên tục có thể dẫn đến số lượng request API gửi đi là rất lớn, vì vậy hãy sử dụng nó một cách có trách nhiệm.
100+
Ngoài ra, BabyAGI script yêu cầu API của OpenAI được thiết lập đúng cách, vì vậy hãy chắc chắn rằng bạn đã set up API trước khi chạy script.
101+
102+
103+
# Đóng góp
104+
105+
Cảm ơn bạn đã quan tâm đến việc đóng góp cho BabyAGI!
106+
Để giữ cho BabyAGI đơn giản và dễ hiểu, chúng tôi đề xuất bạn tuân thủ các hướng dẫn sau khi gửi PR:
107+
- Tập trung vào các sửa đổi nhỏ, từng phần hơn là việc tái cấu trúc lớn.
108+
- Khi giới thiệu các tính năng mới, hãy cung cấp mô tả chi tiết về trường hợp sử dụng cụ thể mà bạn đang giải quyết.
109+
110+
Lời ghi chú từ @yoheinakajima(Mùng 5 tháng 4 năm 2023):
111+
> Tôi biết có nhiều PR đang chờ xử lý, cảm ơn sự kiên nhẫn của bạn - vì tôi vừa mới bắt đầu với GitHub/OpenSource,
112+
> và không dự định thời gian của mình một cách hợp lý trong tuần này. Về hướng đi, tôi đang phân vân giữa giữ
113+
> nó đơn giản và mở rộng - hiện tôi đang hướng về việc giữ một Baby AGI cốt lõi đơn giản, và sử dụng nó như
114+
> một nền tảng để hỗ trợ và quảng bá các phương pháp khác nhau để mở rộng nó (ví dụ: BabyAGIxLangchain là
115+
> một hướng đi). Tôi tin rằng có nhiều phương pháp có giá trị để khám phá, và tôi thấy giá trị trong việc có
116+
> một nơi trung tâm để so sánh và thảo luận. Sắp tới sẽ có thêm nhiều cập nhật.
117+
118+
Tôi mới bắt đầu với GitHub và open source, vì vậy hãy kiên nhẫn khi tôi học cách quản lý dự án này
119+
một cách tốt nhất. Tôi làm việc tại một quỹ đầu tư mạo hiểm vào ban ngày, vì vậy tôi thường xem qua PR và issues
120+
vào buổi tối sau khi đưa con cái đi ngủ - có thể không phải mỗi tối. Tôi chào đón các ý tưởng về việc có thêm
121+
sự hỗ trợ, và tôi sẽ cập nhật phần này sớm thôi (kỳ vọng, tầm nhìn, v.v.).
122+
Tôi đang nói chuyện với nhiều người và cùng lúc học hỏi thêm - hãy kiên nhẫn chờ đợi cập nhật nhé!
123+
124+
# Báo cáo hoạt động BabyAGI
125+
126+
Để giúp cộng đồng BabyAGI cập nhật thông tin về tiến trình dự án, Blueprint AI đã phát triển một bộ tóm tắt
127+
hoạt động Github cho BabyAGI. Báo cáo ngắn gọn này hiển thị tóm tắt tất cả các đóng góp vào repository BabyAGI trong
128+
7 ngày qua (liên tục cập nhật), giúp bạn dễ dàng theo dõi các cập nhật mới nhất.
129+
130+
Để xem báo cáo hoạt động 7 ngày của BabyAGI, hãy truy cập vào đây: [https://app.blueprint.ai/github/yoheinakajima/babyagi](https://app.blueprint.ai/github/yoheinakajima/babyagi)
131+
132+
[<img width="293" alt="image" src="https://user-images.githubusercontent.com/334530/235789974-f49d3cbe-f4df-4c3d-89e9-bfb60eea6308.png">](https://app.blueprint.ai/github/yoheinakajima/babyagi)
133+
134+
# Các dự án được truyền cảm hứng
135+
136+
Trong thời gian ngắn kể từ khi nó được phát hành, BabyAGI đã truyền cảm hứng cho nhiều dự án.
137+
Bạn có thể xem tất cả chúng [tại đây](docs/inspired-projects.md).
138+
139+
# Nguồn gốc
140+
141+
BabyAGI là phiên bản rút gọn của [Task-Driven Autonomous Agent](https://twitter.com/yoheinakajima/status/1640934493489070080?s=20)
142+
(28 tháng 3 năm 2023) được chia sẻ trên Twitter. Phiên bản này giảm xuống còn 140 dòng: 13 comment, 22 dòng trống, và 105 dòng code.
143+
Tên của repository được đặt ra sau khi phản ứng với agent tự động ban đầu - tác giả không có ý định ngụ ý rằng đây là AGI.
144+
145+
Made with love bởi [@yoheinakajima](https://twitter.com/yoheinakajima), một nhà đầu tư mạo hiểm (và rất muốn biết bạn đang xây dựng cái gì!)

0 commit comments

Comments
 (0)