Courses
Kimi K2.6 là mô hình nguồn mở mới nhất của Moonshot AI, được thiết kế cho lập trình, thực thi dài hạn, sử dụng công cụ, và quy trình tác tử. Mô hình có sẵn qua Kimi.com, ứng dụng Kimi, Kimi Code và API, hữu ích để xây dựng các ứng dụng AI thực tiễn cần suy luận, gọi công cụ và đầu ra có cấu trúc.
Trong hướng dẫn này, bạn sẽ xây dựng JobFit AI, một trợ lý tìm việc dùng AI có thể đọc CV của ứng viên, tìm kiếm tin tuyển dụng đang mở, kiểm tra các trang công việc đã chọn và tạo báo cáo xếp hạng mức độ phù hợp. Kimi K2.6 rất phù hợp cho dự án này vì hỗ trợ bối cảnh dài, gọi công cụ, và cả chế độ suy nghĩ lẫn không suy nghĩ thông qua nền tảng API của Kimi.
Dự án sử dụng:
- Kimi K2.6 làm mô hình suy luận
- Olostep để tìm kiếm web trực tiếp và trích xuất nội dung trang việc làm
- pypdf để trích xuất văn bản từ CV của ứng viên
- OpenAI Agents SDK để xây dựng tác tử biết dùng công cụ
- Gradio để biến quy trình thành một web app đơn giản
Kết thúc hướng dẫn, bạn sẽ có một ứng dụng cho phép người dùng tải lên CV, mô tả sở thích công việc và tạo báo cáo xếp hạng các vị trí phù hợp trong chưa đến một phút.
Nếu bạn mới bắt đầu với tác tử AI, tôi rất khuyến nghị đăng ký lộ trình kỹ năng AI Agents Fundamentals của chúng tôi. Lộ trình này bao quát những kiến thức cơ bản về mẫu thiết kế, MCP và hệ đa tác tử.
Yêu cầu trước khi học
Trước khi bắt đầu, hãy đảm bảo bạn có:
- Python 3.11+
- Một khóa API Kimi
- Tối thiểu $5 tín dụng trong tài khoản Moonshot AI
- Một khóa API Olostep
- Một CV dạng PDF
- Kiến thức Python cơ bản
1. Thiết lập môi trường Python
Tạo một thư mục dự án mới:
mkdir JobFit-AI
cd JobFit-AI
Sau đó cài đặt các gói cần thiết:
pip install gradio openai pypdf openai-agents
Các gói chính gồm:
-
gradio: tạo giao diện web -
openai: kết nối tới các API tương thích OpenAI -
pypdf: trích xuất văn bản từ tệp PDF -
openai-agents: tạo tác tử AI biết dùng công cụ
Tiếp theo, tạo tài khoản và sinh khóa API:
- Tạo tài khoản Olostep miễn phí và sinh khóa API từ bảng điều khiển Olostep. Bạn cũng có thể đăng ký gói Starter $9/tháng, bao gồm 5.000 yêu cầu. Chừng đó là đủ để bạn thử nghiệm và triển khai ứng dụng.
- Truy cập nền tảng Kimi, nạp tối thiểu $5 tín dụng và sinh khóa API của bạn.
Đặt khóa API Kimi và Olostep vào biến môi trường. MOONSHOT_API_KEY dùng để truy cập API Kimi K2.6, còn OLOSTEP_API_KEY dùng để tìm kiếm và trích xuất các trang việc làm đang mở.
2. Định nghĩa cấu hình dự án
Khởi chạy Jupyter Notebook, tạo một ô mới và thêm các import cần thiết cùng cấu hình dự án.
import json
import os
import requests
from agents import Agent, AsyncOpenAI, ModelSettings, OpenAIChatCompletionsModel, RunConfig, Runner, function_tool, set_tracing_disabled
from IPython.display import Markdown, display
from pypdf import PdfReader
Bây giờ hãy định nghĩa tên mô hình, các đầu cuối API, số vòng tối đa của tác tử, đường dẫn CV và sở thích công việc.
KIMI_MODEL = "kimi-k2.6"
KIMI_BASE_URL = "https://api.moonshot.ai/v1"
OLOSTEP_SEARCH_URL = "https://api.olostep.com/v1/searches"
OLOSTEP_SCRAPE_URL = "https://api.olostep.com/v1/scrapes"
MAX_AGENT_TURNS = 25
cv_path = "abid-resume.pdf"
preferences = """
Remote data science, AI writer, or technical writer roles in AI, machine learning, data science, or cloud.
Prefer technical content, tutorials, developer education, research writing, and AI product storytelling.
""".strip()
set_tracing_disabled(True)
Các giá trị KIMI_MODEL và KIMI_BASE_URL cho ứng dụng biết cần dùng Kimi K2.6 qua đầu cuối API tương thích OpenAI của Moonshot AI. Các URL Olostep dùng cho tìm kiếm việc làm trực tiếp và trích xuất nội dung trang.
Biến cv_path trỏ tới tệp PDF CV của ứng viên. Hãy đảm bảo tệp PDF được lưu cùng thư mục dự án, hoặc cập nhật đường dẫn nếu lưu nơi khác.
Biến preferences cho tác tử biết cần tìm loại công việc nào. Bạn có thể cập nhật theo vai trò mục tiêu, ngành, địa điểm, cấp bậc hoặc phong cách làm việc ưu tiên.
Chúng ta tắt tracing bằng set_tracing_disabled(True) vì tracing là tính năng mặc định của OpenAI Agents SDK. Do dự án này dùng Kimi qua đầu cuối tương thích OpenAI, tắt tracing giúp thiết lập cục bộ đơn giản hơn và tránh lỗi liên quan khi dùng nhà cung cấp mô hình bên thứ ba.
3. Kết nối tới API Kimi K2.6
Tiếp theo, thiết lập client Kimi bằng khóa API bạn đã lưu trước đó trong biến môi trường.
kimi_client = AsyncOpenAI(
api_key=os.environ["MOONSHOT_API_KEY"],
base_url=KIMI_BASE_URL,
)
Đoạn này tạo client API cho Kimi. api_key được nạp từ MOONSHOT_API_KEY, còn base_url trỏ tới đầu cuối tương thích OpenAI của Moonshot AI.
Tiếp theo, bọc mô hình Kimi để có thể dùng trong OpenAI Agents SDK:
kimi_model = OpenAIChatCompletionsModel(
model=KIMI_MODEL,
openai_client=kimi_client,
)
Bây giờ định nghĩa cài đặt mô hình:
model_settings = ModelSettings(
tool_choice="auto",
parallel_tool_calls=True,
extra_body={"thinking": {"type": "disabled"}},
)
Thiết lập tool_choice="auto" cho phép tác tử tự quyết định khi nào gọi công cụ. parallel_tool_calls=True cho phép chạy song song nhiều lần gọi công cụ khi cần.
Chúng ta cũng tắt chế độ suy nghĩ của Kimi bằng extra_body={"thinking": {"type": "disabled"}}. Điều này giúp đầu ra gọn gàng hơn, phù hợp với báo cáo mức độ phù hợp có cấu trúc.
Cuối cùng, tạo cấu hình chạy:
run_config = RunConfig(
workflow_name="JobFit AI Kimi Search",
tracing_disabled=True,
)
Thuộc tính workflow_name đặt nhãn rõ ràng cho lần chạy này. Chúng ta cũng tiếp tục tắt tracing vì dự án dùng Kimi qua đầu cuối tương thích OpenAI, không phải backend tracing của OpenAI.
4. Trích xuất văn bản từ CV của ứng viên
Tiếp theo, dùng PdfReader để tải CV của ứng viên và trích xuất văn bản từ từng trang.
reader = PdfReader(cv_path)
cv_text = "\n".join(page.extract_text() or "" for page in reader.pages)[:12000]
print(f"Loaded {len(cv_text):,} characters from {cv_path}")
Đoạn mã này đọc tệp PDF được xác định trong cv_path, trích xuất văn bản từ mọi trang và gộp thành một chuỗi.
Giới hạn [:12000] giúp văn bản CV đủ ngắn để đưa vào prompt của tác tử, đồng thời vẫn cung cấp đủ ngữ cảnh về kinh nghiệm, kỹ năng và sở thích của ứng viên.
Đầu ra sẽ trông tương tự như sau, tùy theo tên và độ dài tệp CV của bạn:
Loaded 2,946 characters from abid-resume.pdf
Điều này xác nhận CV đã được tải thành công và cho biết có bao nhiêu ký tự được trích xuất từ PDF.
5. Tạo hướng dẫn cho tác tử
Tiếp theo, định nghĩa các hướng dẫn điều khiển cách tác tử tìm kiếm, dùng công cụ và định dạng báo cáo cuối cùng.
AGENT_INSTRUCTIONS = """
You are JobFit AI, a focused job-search agent.
Tool plan:
- Call search_jobs exactly once with limit 8.
- Read at most 3 direct job pages with read_job_page.
- After reading up to 3 pages, stop using tools and write the report.
- Search again only if the first search returns zero usable jobs.
- Avoid broad search pages, expired jobs, and LinkedIn unless no better source exists.
Report rules:
- Keep the report simple, clear, and practical.
- Use short bullets.
- Do not use em dashes.
- Do not use contractions.
- Do not add text before or after the report.
- End after the final Job Notes entry.
- Include at least 5 ranked jobs if the search results contain at least 5 usable jobs.
- If only 3 pages were scraped, use backup jobs from search results when they look usable.
- Every job must include a clickable Markdown link.
- Every job must have one apply decision: Apply, Maybe, or Do not apply.
Use exactly this Markdown structure:
# JobFit AI Report
## Best Match
- **Role:** <job title>
- **Company:** <company>
- **Apply decision:** Apply / Maybe / Do not apply
- **Fit score:** <score>/100
- **Link:** [Apply here](<job url>)
**Why this is the best match:**
- <specific reason>
- <specific reason>
- <specific reason>
## Ranked Jobs
| Rank | Role | Company | Apply? | Fit | Link |
| --- | --- | --- | --- | --- | --- |
| 1 | <role> | <company> | Apply / Maybe / Do not apply | <score>/100 | [Apply here](<url>) |
## Job Notes
### 1. <Role> at <Company>
- **Apply decision:** Apply / Maybe / Do not apply
- **Fit score:** <score>/100
- **Link:** [Apply here](<job url>)
**Why it fits:**
- <bullet>
- <bullet>
**Concerns:**
- <bullet>
- <bullet>
**Application angle:**
- <how the person should position their CV/application>
""".strip()
Những hướng dẫn này giúp tác tử tập trung: giới hạn quy trình ở một lần tìm kiếm, tối đa ba lần đọc trang công việc và một cấu trúc báo cáo Markdown cố định.
Các quy tắc báo cáo cũng giúp đầu ra dễ quét hơn bằng cách yêu cầu gạch đầu dòng ngắn, liên kết có thể nhấp, điểm phù hợp và quyết định ứng tuyển rõ ràng cho từng vị trí.
6. Xây dựng prompt khi chạy
Sau khi định nghĩa hướng dẫn tác tử, hãy tạo mẫu prompt sẽ được truyền cho tác tử trong mỗi lần chạy.
RUN_PROMPT_TEMPLATE = """
Find current job postings for this candidate and rank them by fit.
Keep the run simple:
- one search
- up to three page reads
- final report
The final report must follow AGENT_INSTRUCTIONS exactly.
Use simple wording. Do not use em dashes. Do not use contractions.
Candidate CV:
{cv_text}
Preferences:
{preferences}
""".strip()
Prompt này kết hợp văn bản CV của ứng viên và sở thích công việc tại thời điểm chạy.
Placeholder cv_text được điền bằng nội dung CV đã trích xuất, trong khi preferences được điền bằng sở thích vai trò đã định nghĩa trước. Cùng nhau, chúng cung cấp đủ ngữ cảnh để tác tử tìm việc phù hợp và xếp hạng theo mức độ phù hợp.
7. Thêm tìm kiếm web trực tiếp với Olostep
Khi đã sẵn sàng hướng dẫn và prompt, hãy thêm hai công cụ để tác tử có thể tìm kiếm web và đọc trang việc làm bằng Olostep.
Công cụ đầu tiên tìm kiếm danh sách việc làm và trả về danh sách kết quả gọn.
@function_tool
def search_jobs(query: str, limit: int = 8) -> str:
"""Search the web for job listings and return compact JSON results."""
response = requests.post(
OLOSTEP_SEARCH_URL,
headers={"Authorization": f"Bearer {os.environ['OLOSTEP_API_KEY']}", "Content-Type": "application/json"},
json={"query": query},
timeout=60,
)
response.raise_for_status()
links = response.json().get("result", {}).get("links", [])[:limit]
results = [
{"title": item.get("title", "Untitled"), "url": item.get("url"), "description": item.get("description", "")}
for item in links
if isinstance(item, dict) and item.get("url")
]
return json.dumps(results, ensure_ascii=False)
Decorator @function_tool giúp hàm Python này khả dụng với tác tử như một công cụ có thể gọi.
Khi cần danh sách việc làm, tác tử sẽ gọi search_jobs với truy vấn tìm kiếm. Hàm gửi truy vấn tới đầu cuối tìm kiếm của Olostep, thu thập các kết quả hàng đầu và trả về dưới dạng JSON.
Mỗi kết quả bao gồm:
- chức danh công việc
- URL công việc
- mô tả ngắn
Công cụ thứ hai cho phép tác tử mở và đọc một trang công việc cụ thể.
@function_tool
def read_job_page(url: str) -> str:
"""Scrape one job listing URL and return markdown text."""
response = requests.post(
OLOSTEP_SCRAPE_URL,
headers={"Authorization": f"Bearer {os.environ['OLOSTEP_API_KEY']}", "Content-Type": "application/json"},
json={"url_to_scrape": url, "formats": ["markdown"]},
timeout=120,
)
response.raise_for_status()
markdown = response.json().get("result", {}).get("markdown_content") or ""
return markdown[:8000]
Hàm này gửi URL công việc tới đầu cuối trích xuất của Olostep và trả về nội dung trang ở định dạng Markdown.
Giới hạn [:8000] giúp trang đã trích xuất đủ ngắn để tác tử xử lý nhưng vẫn nắm bắt được các chi tiết hữu ích như trách nhiệm, yêu cầu và thông tin công ty.
8. Tạo tác tử JobFit AI
Bây giờ hãy tạo tác tử và kết nối tất cả thành phần đã định nghĩa: mô hình Kimi, cài đặt mô hình, công cụ Olostep và hướng dẫn tác tử.
agent = Agent(
name="JobFit AI",
model=kimi_model,
model_settings=model_settings,
tools=[search_jobs, read_job_page],
instructions=AGENT_INSTRUCTIONS,
)
Đối tượng Agent là bộ điều khiển chính cho quy trình này.
Tác tử sử dụng:
kimi_modellàm mô hình suy luậnmodel_settingsđể kiểm soát việc dùng công cụ và hành vi đầu rasearch_jobsđể tìm danh sách việc làm trực tiếpread_job_pageđể trích xuất nội dung các trang đã chọnAGENT_INSTRUCTIONSđể tuân thủ chính xác quy tắc tìm kiếm và báo cáo
Đến đây, tác tử đã sẵn sàng tìm việc, đối chiếu với CV của ứng viên và tạo báo cáo JobFit AI có cấu trúc.
9. Chạy quy trình tác tử
Bây giờ hãy chạy tác tử JobFit AI bằng văn bản CV đã trích xuất và sở thích công việc đã định nghĩa.
Đầu tiên, định dạng prompt khi chạy:
prompt = RUN_PROMPT_TEMPLATE.format(cv_text=cv_text, preferences=preferences)
Lệnh này điền mẫu prompt bằng CV của ứng viên và sở thích vai trò mục tiêu.
Tiếp theo, bắt đầu lần chạy dạng stream:
print("Starting agent run")
result = Runner.run_streamed(
agent,
prompt,
max_turns=MAX_AGENT_TURNS,
run_config=run_config,
)
Phương thức Runner.run_streamed() khởi động quy trình tác tử và stream các sự kiện theo thời gian thực, giúp bạn dễ quan sát khi tác tử gọi công cụ, nhận đầu ra và tạo thông điệp cuối.
Bây giờ thêm vòng lặp streaming:
async for event in result.stream_events():
if event.type == "agent_updated_stream_event":
print(f"Agent: {event.new_agent.name}")
elif event.type == "run_item_stream_event":
item = event.item
if event.name == "tool_called":
raw = item.raw_item
tool_name = raw.get("name") if isinstance(raw, dict) else getattr(raw, "name", "tool")
arguments = raw.get("arguments") if isinstance(raw, dict) else getattr(raw, "arguments", "")
arguments = str(arguments).replace(chr(10), " ")[:500]
print(f"Tool call: {tool_name}")
if arguments:
print(f"Parameters: {arguments}")
elif event.name == "tool_output":
print(f"Tool output: {len(str(item.output)):,} chars")
elif event.name == "message_output_created":
print("Final message ready")
Vòng lặp này in ra các cập nhật tiến độ hữu ích khi tác tử chạy. Ví dụ, nó hiển thị khi tác tử tìm kiếm việc, đọc trang công việc hoặc hoàn tất tạo báo cáo.
Cuối cùng, lưu đầu ra cuối vào biến report:
report = result.final_output
globals()["report"] = report
print("Run complete")
print(f"Model responses: {len(result.raw_responses)}")
print(f"Run items: {len(result.new_items)}")
print(f"Final output: {len(str(report)):,} chars")
Biến report lưu báo cáo JobFit AI cuối cùng, bạn có thể hiển thị, lưu hoặc dùng trong app Gradio.
Đầu ra sẽ trông như sau:
Starting agent run
Agent: JobFit AI
Tool call: search_jobs
Parameters: {"query":"remote data science writer technical writer AI machine learning content editor","limit":8}
Tool output: 2,445 chars
Tool call: read_job_page
Parameters: {"url":"https://www.indeed.com/q-data-science-writer-jobs.html"}
Tool output: 8,000 chars
Tool call: read_job_page
Parameters: {"url":"https://www.builtinnyc.com/jobs/remote/data-analytics/data-science"}
Tool output: 8,000 chars
Tool call: read_job_page
Parameters: {"url":"https://www.virtualvocations.com/jobs/q-data+scientist+remote+jobs/c-writing/d-336"}
Tool output: 5,075 chars
Final message ready
Run complete
Model responses: 5
Run items: 13
Final output: 5,931 chars
Đầu ra này xác nhận tác tử đã tìm kiếm việc, đọc các trang đã chọn và tạo báo cáo cuối thành công.
10. Hiển thị báo cáo JobFit đã tạo
Sau khi chạy xong, hiển thị báo cáo cuối ở định dạng Markdown.
display(Markdown(report))
Lệnh này render báo cáo JobFit AI ngay trong notebook, giúp dễ đọc hơn dạng văn bản thuần.
Báo cáo gồm vị trí phù hợp nhất, danh sách xếp hạng, điểm phù hợp, quyết định ứng tuyển, các băn khoăn và góc độ ứng tuyển.

11. Biến quy trình thành ứng dụng web Gradio
Sau khi thử nghiệm quy trình trong notebook, bạn có thể biến nó thành một web app Gradio đơn giản. Tạo tệp app.py, sau đó sao chép mã từ tệp JobFit-AI/app.py trong dự án GitHub và dán vào tệp cục bộ của bạn.
Chạy ứng dụng bằng:
python app.py

Sau đó mở ứng dụng cục bộ trên trình duyệt tại URL hiển thị (trong ví dụ này là http://127.0.0.1:7860/):

Ứng dụng Gradio cung cấp giao diện đơn giản để tạo báo cáo mức độ phù hợp. Gồm có:
- Trường tải lên CV PDF để người dùng tải hồ sơ.
- Ô văn bản sở thích công việc để mô tả loại vai trò mong muốn, gồm loại vai trò, ngành, địa điểm, cấp bậc và chủ đề ưa thích.
- Nút Generate JobFit Report để bắt đầu quy trình tác tử.
- Nhật ký tiến trình ẩn sẽ xuất hiện khi chạy và hiển thị các bước ứng dụng đang thực hiện, như đọc CV, gọi công cụ và nhận đầu ra.
- Khu vực báo cáo Markdown cuối hiển thị bảng xếp hạng khi tác tử hoàn tất.
Ở hậu trường, ứng dụng đọc CV đã tải lên, trích xuất văn bản, gửi CV và sở thích tới tác tử JobFit AI, và tìm kiếm danh sách việc làm trực tiếp bằng Olostep. Ứng dụng đọc tối đa ba trang công việc và trả về báo cáo Markdown có cấu trúc với vai trò được xếp hạng, điểm phù hợp, quyết định ứng tuyển, băn khoăn và góc độ ứng tuyển.
12. Tải CV và tạo báo cáo
Hãy kiểm thử web app bằng cách tải lên CV hoặc sơ yếu lý lịch dạng PDF và nhấp Generate JobFit Report.
Trong ví dụ này, tôi đã tải một CV với khoảng ba năm kinh nghiệm để xem ứng dụng có thể tìm việc phù hợp dựa trên hồ sơ và sở thích của ứng viên hay không. Báo cáo được tạo trong chưa đầy một phút.
Trong khi ứng dụng chạy, nhật ký tiến trình hiển thị từng bước của quy trình, bao gồm:
- đọc CV
- trích xuất văn bản từ từng trang
- bắt đầu chạy tác tử
- gọi công cụ tìm kiếm việc
- trả về đầu ra công cụ

Khi chạy xong, ứng dụng hiển thị báo cáo cuối ở định dạng Markdown.
Báo cáo bắt đầu với vị trí phù hợp nhất, tiếp theo là bảng xếp hạng việc làm. Sau đó là ghi chú chi tiết cho từng vai trò, gồm điểm phù hợp, quyết định ứng tuyển, lý do phù hợp, băn khoăn có thể có và góc độ ứng tuyển.

Trong ví dụ này, kết quả đứng đầu là vị trí Senior Data Science Writer tại NannyML. Vì vai trò này phù hợp với nền tảng khoa học dữ liệu, viết kỹ thuật và nội dung AI của ứng viên, nên có vẻ là một lựa chọn rất tốt.
Bạn có thể nhấp liên kết Apply here trong báo cáo để mở trang việc làm và xem toàn bộ mô tả trước khi quyết định ứng tuyển.

Lưu ý: Nếu bạn gặp vấn đề khi chạy dự án cục bộ, hãy kiểm tra kho GitHub: kingabzpro/JobFit-AI. Kho này bao gồm notebook, tệp app.py và hướng dẫn thiết lập để giúp bạn cài đặt phụ thuộc và chạy dự án cục bộ.
Tổng kết
JobFit AI sử dụng Kimi K2.6, Olostep và OpenAI Agent SDK để giải quyết hai vấn đề thường gặp với những người đang chuyển vai trò hoặc tích cực ứng tuyển.
Vấn đề đầu tiên là biết nên ứng tuyển ở đâu. Có rất nhiều bảng việc làm, nền tảng và trang tuyển dụng của công ty, nhưng không phải lúc nào cũng rõ vai trò nào đáng để bạn dành thời gian. Ứng dụng này thu hẹp phạm vi bằng cách dùng CV và sở thích của ứng viên để tìm các công việc phù hợp hơn với kinh nghiệm của họ.
Vấn đề thứ hai là lọc qua quá nhiều tin tuyển dụng. Thay vì thủ công kiểm tra mọi bảng việc làm, tác tử tìm danh sách đang mở, đọc các trang đã chọn và tạo một báo cáo có cấu trúc với vị trí phù hợp nhất, bảng xếp hạng, điểm phù hợp, băn khoăn và góc độ ứng tuyển. Điều này giúp bạn tập trung vào các vai trò thực sự đáng ứng tuyển.
API Kimi K2.6 cũng hoạt động tốt trong quy trình dựa trên tác tử này. Mô hình nhanh, ổn định và hiệu quả khi làm theo hướng dẫn có cấu trúc. Trong thử nghiệm, khi cho phép tối đa 25 vòng, tác tử tìm kiếm và trích xuất nhiều trang sâu hơn, nhưng thời gian chạy khoảng năm phút. Để cân bằng chất lượng và tốc độ, tôi giới hạn quy trình còn một lần tìm kiếm và tối đa ba lần đọc trang, giúp tạo báo cáo trong chưa đầy một phút.
Bạn có thể cải thiện chất lượng báo cáo bằng cách tăng số bước cho phép, số kết quả tìm kiếm hoặc số trang đọc. Ví dụ, nếu tăng giới hạn tác tử lên 30 vòng và cho phép đọc nhiều trang hơn, báo cáo sẽ sâu hơn với nhiều vai trò và khuyến nghị mạnh hơn. Tuy nhiên, điều này cũng tăng thời gian chạy và mức sử dụng API.
Nếu bạn quan tâm tới việc tạo các công cụ tác tử tương tự, hãy xem thêm các hướng dẫn API khác của chúng tôi về xây dựng:
Câu hỏi thường gặp về Kimi K2.6
Kimi K2.6 là gì?
Kimi K2.6 là mô hình tác tử open-weight mới nhất của Moonshot AI, phát hành tháng 4/2026. Mô hình dựa trên kiến trúc Mixture-of-Experts (MoE) với tổng ~1 nghìn tỷ tham số, kích hoạt 32 tỷ mỗi lượt suy luận, và được tối ưu cho lập trình, dùng công cụ và tác vụ tác tử dài hạn.
Cửa sổ ngữ cảnh của Kimi K2.6 là bao nhiêu?
Kimi K2.6 hỗ trợ cửa sổ ngữ cảnh 262.144 token (256K). Điều này rất phù hợp để xử lý toàn bộ mã nguồn, tài liệu dài hoặc lần chạy tác tử nhiều bước trong một phiên.
Kimi K2.6 có giá bao nhiêu qua API?
Trực tiếp qua Kimi API, token đầu vào có giá $0,95/1M (cache miss) và $0,16/1M (cache hit), đầu ra $4,00/1M token. Một số nhà cung cấp bên thứ ba có mức thấp hơn, bắt đầu khoảng $0,60/1M đầu vào và $2,80/1M đầu ra.
Kimi K2.6 có hỗ trợ chế độ suy nghĩ không?
Có, Kimi K2.6 hỗ trợ cả chế độ suy nghĩ (lập luận mở rộng) và chế độ tức thời (nhanh hơn, không suy nghĩ). Trong hướng dẫn, chế độ suy nghĩ được tắt rõ ràng qua extra_body={"thinking": {"type": "disabled"}} để đầu ra gọn gàng và nhanh hơn.
Kimi K2.6 thể hiện thế nào trên các benchmark lập trình dạng tác tử?
Kimi K2.6 đạt 80,2 trên SWE-Bench Verified, trở thành mô hình nguồn mở mạnh nhất ở mức này với hiệu năng chỉ sau các mô hình đóng như Claude Opus 4.6 (80,8%) và Gemini 3.1 Pro (80,6%). Trên BrowseComp, mô hình đạt 83,2, tăng lên 86,3 với chế độ Agent Swarm, đứng sau GPT-5.5 Pro (90,1) và bản xem trước chưa công bố Claude Mythos (86,9).
Là một nhà khoa học dữ liệu được chứng nhận, tôi đam mê tận dụng công nghệ tiên tiến để tạo ra các ứng dụng học máy đổi mới. Với nền tảng vững chắc về nhận dạng giọng nói, phân tích và báo cáo dữ liệu, MLOps, AI hội thoại và NLP, tôi đã rèn giũa kỹ năng phát triển các hệ thống thông minh có thể tạo ra tác động thực sự. Bên cạnh chuyên môn kỹ thuật, tôi cũng là một người truyền đạt tốt, có khả năng chắt lọc các khái niệm phức tạp thành ngôn ngữ rõ ràng, súc tích. Nhờ đó, tôi trở thành một blogger được nhiều người quan tâm trong lĩnh vực khoa học dữ liệu, chia sẻ góc nhìn và kinh nghiệm với cộng đồng các chuyên gia dữ liệu ngày càng lớn. Hiện tại, tôi tập trung vào sáng tạo và biên tập nội dung, làm việc với các mô hình ngôn ngữ lớn để phát triển nội dung mạnh mẽ và hấp dẫn, giúp doanh nghiệp và cá nhân tận dụng tối đa dữ liệu của mình.
