Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add translate message #37

Closed
wants to merge 3 commits into from
Closed

add translate message #37

wants to merge 3 commits into from

Conversation

duong2417
Copy link
Contributor

@duong2417 duong2417 commented Nov 21, 2024

Trong project này em xin phép dùng 1 vài đoạn code của người trước. Vì em muốn tạo ra 1 project tốt nhất (đối với em) nên cái nào tốt thì em tận dụng. Em đã theo dự án này từ trước, và em chỉ muốn góp sức hoàn thiện dự án này. Nếu có may mắn lắm được merge, thì về năng lực, em vẫn không bằng những người khác, nên với em, việc được merge và việc hợp tác với chị Suesi là 2 chuyện khác nhau.

Front-end:
Em thấy ý tưởng của anh kido-luci rất tốt nên đã dựa theo về collection “languages”, nhưng có thay đổi 1 chút cho phù hợp với việc "nhập ngôn ngữ" thay vì “chọn ngôn ngữ từ danh sách”:
image

So sánh “danh sách ngôn ngữ” và “nhập ngôn ngữ”:
image

Back-end:
Em cũng dựa theo kido-luci, bao gồm việc lấy danh sách ngôn ngữ từ Firestore về cho Gemini dịch.
Ở phía user, duyệt danh sách bản dịch của trường "translations", nếu trường "language_names" của nó chứa 1 trong số những ngôn ngữ user chọn, thì lấy bản dịch đó.
Ảnh chụp màn hình (3039)

Hạn chế:
Gemini có thể phản hồi chậm hơn do nó không chỉ dịch mà còn có nhiệm vụ khác (như trong prompt đã nói).
Khi fetch bản dịch về phải tốn 1 ít thời gian tìm kiếm để lấy ra những ngôn ngữ mà user đã chọn thay vì gọi trực tiếp "translated[selectedCode]" nếu dùng "danh sách ngôn ngữ" (vì có sẵn mã ngôn ngữ), nhưng độ phức tạp của vòng lặp là O(n) nên không đáng kể.

Gemini không ổn định có thể phản hồi sai.
VD:

  • Dịch "I'm from Việt Nam" sang tiếng Việt thì Gemini sẽ bỏ qua không dịch tiếng Việt vì prompt kêu nó "Bỏ qua ngôn ngữ trùng với ngôn ngữ gốc của message".
  • Khi nhập sai chính tả, vd "japenn" thì có lúc ok lúc không (mà lúc không thì hiếm). Lúc không ok nó trả về như này:
    Messenger_creation_FE21770F-E9DB-4459-A838-0458929FDE62

Giải pháp:
Thiết lập stream cho Gemini. Cái này e sẽ update dần.

Video demo:
https://github.com/user-attachments/assets/a8ef38f7-9da2-49bb-ac3b-d29d369cce17

@duong2417 duong2417 requested a review from suesitran as a code owner November 21, 2024 08:53
@suesitran suesitran closed this Dec 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants