Telegram đang chuẩn bị bot @agent, cho phép bạn kết nối khóa API của riêng mình từ các dịch vụ AI như Claude, ChatGPT, Gemini, Grok hoặc OpenRouter. Màn hình kết nối đã xuất hiện trong các bản dựng beta của Telegram dành cho macOS 13.1.0 vào sáng ngày 23 tháng 10 và vẫn giữ nguyên trong bản dựng 283392 ngày 27 tháng 10. Theo sơ đồ API trong bản beta, khóa này dường như vẫn nằm trên các máy chủ của Telegram: máy chủ chỉ trả về bốn ký tự cuối cùng của khóa và ngày kết nối cho máy khách. Điều này áp dụng cho những người đã trả tiền đăng ký cho một trong các nhà cung cấp. Trên máy chủ chính, danh sách các bot agent trống: khóa agent_bot_ids đã xuất hiện trong cấu hình máy chủ thử nghiệm của Telegram vào lúc 21:21 UTC ngày 22 tháng 10, nhưng không có trên máy chủ chính vào ngày 26 tháng 10. Một video trong các cuộc thảo luận cho thấy một cuộc đối thoại hoạt động với @agent trên máy chủ thử nghiệm.
Những gì có trong bản dựng
Bản beta macOS được phân phối qua nguồn cấp dữ liệu cập nhật mac-updates.telegram.org, mỗi bản dựng trong đó là một tệp zip chứa ứng dụng. Trong bản 13.1.0.283359 ngày 21 tháng 10, không có dòng nào liên quan đến agent. Chúng xuất hiện trong bản 13.1.0.283362, phát hành vào sáng ngày 23 tháng 10, và vẫn giữ nguyên trong bản 13.1.0.283391 ngày 26 tháng 10 và 13.1.0.283392 ngày 27 tháng 10.
Các văn bản trên màn hình mới:
- «Use the API key from an AI service you have already purchased to set up your own AI chatbot» — khóa từ một dịch vụ AI đã mua sẽ biến thành chatbot của riêng bạn.
- «Select the AI provider you have an account with» — chọn nhà cung cấp mà bạn có tài khoản.
- «Add Your AI API Key», «Enter your API key» và gợi ý «Get your API key or API token in your AI provider's settings»: khóa được lấy trong cài đặt của chính nhà cung cấp.
- «This chatbot works only if you have an active subscription for an AI service» — bot không hoạt động nếu không có đăng ký dịch vụ AI đang hoạt động.
- «Add Another Provider» và «Right-click a provider to delete it» — có thể kết nối nhiều nhà cung cấp và xóa từng cái một.
- «You can reconnect this provider with an API key later» — nhà cung cấp đã ngắt kết nối có thể được khôi phục bằng khóa mới.
- «Could not connect. Try again.» và «The provider is unavailable. Try again.» — thông báo về việc kết nối không thành công.
- «You can now use @agent» — thông báo cuối cùng sau khi kết nối.
Có năm nhà cung cấp trong mã: AgentProviderClaude, AgentProviderChatGPT, AgentProviderGemini, AgentProviderGrok và AgentProviderOpenRouter. Một trong số đó có chú thích «Hundreds of models». OpenRouter là một công cụ tổng hợp, cung cấp quyền truy cập vào các mô hình từ nhiều công ty khác nhau chỉ với một khóa, và chú thích này, dường như, là của nó.
Những gì máy chủ lưu trữ
Trong sơ đồ MTProto được nhúng trong bản dựng, đã xuất hiện bốn loại và một bản cập nhật. Các trường của chúng như sau:
| Loại | Trường | Ý nghĩa |
|---|---|---|
agentProvider | vendor, keyUrl, iconEmojiId, modelsSearchable | mô tả nhà cung cấp: là ai, liên kết đến trang khóa, biểu tượng, có thể tìm kiếm theo mô hình của họ không |
providerKey | provider, keyLast4, dateConnected | khóa đã kết nối: thuộc nhà cung cấp nào, bốn ký tự cuối cùng, ngày kết nối |
settings | activeProvider | nhà cung cấp nào trong số các nhà cung cấp đã kết nối hiện đang chịu trách nhiệm cho @agent |
providers / providersNotModified | — | danh sách các nhà cung cấp từ máy chủ |
updateAgentSettings | — | theo tên, đây là bản cập nhật mà máy chủ gửi khi cài đặt thay đổi |
Cặp «danh sách và NotModified» trong API Telegram có nghĩa là một danh sách mà máy khách yêu cầu từ máy chủ và lưu vào bộ nhớ cache bằng hàm băm, giống như chủ đề (account.themes/account.themesNotModified) hoặc hình nền. Do đó, danh sách các nhà cung cấp cùng với biểu tượng và liên kết đến các trang khóa được gửi từ máy chủ và có thể được bổ sung mà không cần bản dựng mới. Địa chỉ các trang chứa khóa không có trong ứng dụng; có một đoạn chuỗi «Get your API key in [», mà theo trường keyUrl, liên kết từ máy chủ sẽ được chèn vào.
Toàn bộ khóa không được lưu trữ trong mô tả kết nối — chỉ có keyLast4. Các lỗi được ghi lại theo định dạng mà máy chủ Telegram trả lời các yêu cầu: AGENT_KEY_INVALID, AGENT_KEY_MISSING, AGENT_NOT_AVAILABLE, AGENT_PROVIDER_UNAVAILABLE. Theo sơ đồ, khóa được máy chủ Telegram kiểm tra, và khóa đó, dường như, vẫn nằm trên máy chủ sau khi kết nối. Việc các yêu cầu đến mô hình có đi qua cùng một máy chủ hay không thì không thể thấy được từ sơ đồ. Địa chỉ API của Claude, OpenAI, Google, xAI hoặc OpenRouter không có trong bản dựng, vì vậy ứng dụng, dường như, không trực tiếp liên hệ với nhà cung cấp. Bản cập nhật updateAgentSettings, nếu xét theo tên, cần thiết để việc thay đổi nhà cung cấp đang hoạt động trên một thiết bị có thể đến được các thiết bị khác.
Màn hình này nằm ở đâu trong máy khách
Dòng kết nối được gọi là AgentConnectRowItem và nằm trong mô-đun PeerInfoUI, mô-đun này vẽ các trang hồ sơ người dùng, bot và kênh. Bên cạnh đó là AgentProfileRow, AgentConnections và dịch vụ TelegramAgentService. Trong mô tả hồ sơ đã xuất hiện thuộc tính isAgent, và nút trong hồ sơ bên cạnh cờ launchApp, dùng để đánh dấu việc khởi chạy mini-app, có thêm cờ agentSetup. Có vẻ như cài đặt được mở từ trang của chính bot agent bằng một nút, chứ không phải từ cài đặt chung của ứng dụng, nhưng đây là cách hiểu dựa trên tên.
Cách trò chuyện với @agent sau khi kết nối thì không thể thấy được trong bản dựng. Trong các cuộc thảo luận có video cho thấy mô hình trả lời trong một cuộc đối thoại riêng với @agent trên máy chủ thử nghiệm.
Những gì có trên máy chủ thử nghiệm
Đến 21:21 UTC ngày 22 tháng 10, trong phản hồi help.getAppConfig của máy chủ thử nghiệm đã xuất hiện khóa agent_bot_ids với hai giá trị: 5000448925 và 2202931014; trong ảnh chụp trước đó của tệp, từ 19:09 UTC ngày 20 tháng 10, nó không có. Đến ngày 26 tháng 10, nó không thay đổi. Trong cấu hình máy chủ chính không có khóa này vào ngày 26 tháng 10. Máy chủ thử nghiệm của Telegram là một môi trường riêng biệt với các tài khoản riêng, vì vậy không thể biết các bot này là gì trong Telegram thông thường dựa trên các định danh này.
Trong cùng cấu hình và trên máy chủ chính, từ ngày 20 tháng 10 đã có bot_allowed_suffixes — các hậu tố agent, ai, app, game và gay, mà bot có thể sử dụng để có tên người dùng thứ hai. Các bot dạng «…agent» và @agent là những thứ khác nhau: hậu tố có sẵn cho bất kỳ chủ sở hữu bot nào có Premium, còn @agent là một tài khoản cụ thể.
Tên người dùng @agent đã được sử dụng: nó được bán đấu giá trên Fragment vào ngày 27 tháng 11 năm 2022 với giá 70 000 TON, trang t.me/agent vào ngày 27 tháng 10 trống. Việc đề cập đến @agent trong bản beta có liên quan đến tài khoản này hay không thì không thể thấy được từ dữ liệu công khai.
Nơi các chức năng chưa có
Tính đến ngày 27 tháng 10, agent chưa có trong sơ đồ API công khai — cả trong api.tl của Telegram Desktop (lớp 232) lẫn trong td_api.tl của TDLib — cũng như trong mã nguồn mở của các máy khách. Trong Info.plist của kho lưu trữ telegram-macos được mở vào ngày 23 tháng 10 — là bản dựng 283357, sớm hơn năm số so với bản có agent; các tệp của agent không có trong kho lưu trữ. Mã chung với iOS trong Telegram-iOS cũng không chứa nó, mặc dù trong bản beta macOS, các lỗi AGENT_* nằm chính xác trong phần chung, TelegramCore.
Trong cùng các bản beta macOS, công việc đang được tiến hành trên các widget trong tin nhắn mà bot viết; chúng, giống như agent, hiện chưa có trong sơ đồ công khai cũng như trong Bot API.
Điều này khác gì so với AI hiện có trong Telegram
Telegram đã có các chức năng AI riêng cho văn bản: trong cấu hình máy chủ chính có các tham số aicompose_tone_* — số lượng ví dụ về giọng điệu, độ dài tên và lời nhắc của nó, giới hạn các giọng điệu đã lưu.




