API Quyết định của OpenAI và Jev của TypeSafe làm cùng một công việc: gửi đầu vào và một bộ câu hỏi, nhận lại các câu trả lời đã được phân loại với xác suất thay vì văn bản để phân tích cú pháp, và chỉ thanh toán cho các token đầu vào. Decisions có giá 0.10 đô la cho mỗi 1 triệu token đầu vào, đang ở bản beta công khai, chấp nhận văn bản và hình ảnh, và chạy trên GPT-6 Luna. Jev có giá 0.042 đô la cho mỗi 1 triệu token đầu vào, đang ở giai đoạn truy cập sớm thông qua tài khoản TypeSafe console, chỉ chấp nhận văn bản và giới hạn mỗi yêu cầu ở 64k token.
Để nắm vững những điều cơ bản, hãy bắt đầu với API Decisions là gì và cách sử dụng Jev. Bài đăng này so sánh chúng từng hàng một, sau đó kết nối cả hai vào một dự án Apidog duy nhất, đằng sau một quy tắc độ tin cậy.
So sánh song song
Mỗi ô đều lấy từ các trang của nhà cung cấp trong phần tài liệu tham khảo.
| API Quyết định của OpenAI | TypeSafe Jev | |
|---|---|---|
| Điểm cuối | POST /v1/decisions |
POST /v1/systemone |
| Mô hình | chỉ gpt-6-luna |
jev-1.13.0 (jev-latest) |
| Trạng thái | beta công khai, GA “trong vài tuần tới” | truy cập sớm (bài đăng ra mắt), truy cập trực tiếp bị giới hạn bởi tài khoản console |
| Đầu vào | văn bản + hình ảnh (URL dữ liệu base64; tài liệu tham khảo cũng liệt kê các URL công khai) | chỉ văn bản, 64k mỗi yêu cầu |
| Các loại câu hỏi | predicate / choice (2 đến 255 tùy chọn) / score |
noul / choice / score |
| Hình dạng câu hỏi | mảng với name tùy chọn |
đối tượng được đánh dấu bằng id |
| Các trường đầu ra | probability; choice hoặc score + probabilities + confidence; refusal |
noul; choice hoặc score + confidence + probabilities |
| Giá | $0.10 cho mỗi 1 triệu đầu vào, không tính phí đầu ra | $0.042 cho mỗi 1 triệu đầu vào, không tính phí đầu ra |
| Bộ nhớ đệm | chưa có (diễn đàn OpenAI) | chưa công bố |
| Giới hạn tốc độ | trang giới hạn theo tổ chức | 100K TPS / 80 RPS, động |
| Tuyên bố về tốc độ | “nhanh hơn khoảng 10 lần so với API Responses” (OpenAI) | 70 đến 500 ms từ đầu đến cuối (TypeSafe) |
| Dữ liệu | ZDR + HIPAA cho khách hàng đủ điều kiện; cư trú tại Hoa Kỳ/EU | ZDR cho doanh nghiệp; không được đào tạo trên các yêu cầu |
Decisions là một điểm cuối, không phải một mô hình; nó chạy trên GPT-6 Luna. Jev là "mô hình System One" của TypeSafe, được đào tạo với RLCD để đưa ra các quyết định đã hiệu chỉnh, và không phải là một LLM tổng quát.
Yêu cầu định tuyến phiếu hỗ trợ tương tự với cả hai định dạng
Một phiếu hỗ trợ đến; bạn muốn biết bộ phận nào sẽ xử lý và câu trả lời có/không về việc khách hàng có muốn hoàn tiền hay không. Đối với Decisions trước: các câu hỏi là một mảng, mỗi câu hỏi có một type, instructions, và một name tùy chọn mà API sẽ trả về.
curl https://api.openai.com/v1/decisions \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-6-luna",
"input": "I was charged twice for my order.",
"questions": [
{
"type": "choice",
"name": "department",
"instructions": "Which team should handle this ticket?",
"choices": [
{"value": "billing", "description": "Charges, refunds"},
{"value": "technical", "description": "Bugs, errors"},
{"value": "other"}
]
},
{
"type": "predicate",
"name": "wants_refund",
"instructions": "Is the customer asking for money back?"
}
]
}'
Bây giờ đến Jev: trường đầu vào là state, các câu hỏi là một đối tượng được đánh dấu bằng các id bạn chọn, choice nhận một bản đồ criteria từ tùy chọn đến mô tả, và loại có/không là noul.
curl https://api.typesafe.ai/v1/systemone \
-H "Authorization: Bearer $TYPESAFE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "jev-latest",
"state": "I was charged twice for my order.",
"questions": {
"department": {
"type": "choice",
"instructions": "Which team should handle this ticket?",
"criteria": {
"billing": "Charges, refunds",
"technical": "Bugs, errors",
"other": "Anything else"
}
},
"wants_refund": {
"type": "noul",
"instructions": "Is the customer asking for money back?"
}
}
}'
Kết quả trả về
Decisions trả về model, answers, và usage. Các câu trả lời đến theo thứ tự được hỏi, mỗi câu có name riêng; xác suất theo từng tùy chọn là một mảng các đối tượng. Lưu ý output_tokens: 0.
{
"model": "gpt-6-luna",
"answers": [
{
"type": "choice",
"name": "department",
"choice": "billing",
"probabilities": [
{"value": "billing", "probability": 0.95},
{"value": "technical", "probability": 0.02},
{"value": "other", "probability": 0.03}
],
"confidence": 0.93
},
{"type": "predicate", "name": "wants_refund", "probability": 0.95}
],
"usage": {
"input_tokens": 42,
"input_tokens_details": {"cached_tokens": 0, "cache_write_tokens": 0},
"output_tokens": 0,
"output_tokens_details": {"reasoning_tokens": 0},
"total_tokens": 42
}
}
Jev trả về model (id có phiên bản), một đối tượng answers được đánh dấu bằng các id câu hỏi của bạn, và usage với input_tokens và output_tokens. Bạn đọc answers.department.choice, confidence của nó, và probabilities được đánh dấu bằng tên tùy chọn, cộng với answers.wants_refund.noul. Chỉ ở phía OpenAI, một câu trả lời refusal có thể xuất hiện cho mỗi câu hỏi trong khi các câu hỏi khác vẫn nhận được câu trả lời.
Giá mỗi triệu, và chi phí cho một triệu phiếu hỗ trợ
Theo OpenAI: với gpt-6-luna, đầu vào có giá 0.10 đô la cho mỗi 1 triệu token, không tính phí đọc bộ đệm, ghi bộ đệm hoặc token đầu ra. TypeSafe liệt kê 0.042 đô la cho mỗi 1 triệu token đầu vào và đầu ra miễn phí.
Lấy một phiếu hỗ trợ 500 token với hai câu hỏi trên:
- Decisions: 500 / 1,000,000 x $0.10 = $0.00005 cho mỗi yêu cầu. Một triệu phiếu hỗ trợ = $50.
- Jev: 500 / 1,000,000 x $0.042 = $0.000021 cho mỗi yêu cầu. Một triệu phiếu hỗ trợ = $21.
Hai hệ số nhân áp dụng ở phía OpenAI: đầu vào ngữ cảnh dài (trên 272K token) là 2x, tức 0.20 đô la cho mỗi 1 triệu, được lấy từ trang giá, và xử lý theo khu vực thêm 10%. Không có tài liệu nào về cấp Batch, Flex hoặc Fast cho /v1/decisions, và theo diễn đàn của OpenAI, chưa có bộ nhớ đệm lời nhắc, mặc dù usage có các trường cached_tokens và cache_write_tokens. Jev không công bố gì về bộ nhớ đệm.
Đầu vào: hình ảnh ở một bên, văn bản ở bên kia
Decisions chấp nhận một chuỗi hoặc một mảng các tin nhắn người dùng kết hợp các phần input_text và input_image. Hướng dẫn nói rằng hình ảnh phải là URL dữ liệu base64 nội tuyến; tài liệu tham khảo API cũng liệt kê các URL HTTP(S) công khai và tối đa 128 hình ảnh cho mỗi yêu cầu, vì vậy hãy coi base64 là cách an toàn và kiểm tra các URL được lưu trữ trước khi dựa vào chúng. file_id, tệp và âm thanh không được hỗ trợ.
Jev chỉ chấp nhận văn bản: một chuỗi, một đối tượng JSON, hoặc một mảng văn bản, không có đầu vào hình ảnh, âm thanh hoặc video theo trang mô hình của TypeSafe. Trên diễn đàn OpenAI, sam.saffron đã nói rõ: khả năng hiểu hình ảnh là thứ mà Jev chưa hỗ trợ. Nếu quyết định của bạn phụ thuộc vào một bức ảnh, chỉ Decisions mới có thể xem xét nó.
Ngữ cảnh và giới hạn tốc độ
Jev công bố giới hạn 64k token cho mỗi yêu cầu, trong đó 32k dành cho state cộng với câu hỏi dài nhất, và cho biết nó tiếp nhận trạng thái một lần và đánh giá mọi câu hỏi song song. Trang mô hình của họ liệt kê 100K token mỗi giây và 80 yêu cầu mỗi giây, điều chỉnh động, với mã lỗi 429 nếu vượt quá giới hạn. Những con số này đã thay đổi từ tháng 9, vì vậy hãy đọc trang trực tiếp.
OpenAI không công bố số liệu cửa sổ ngữ cảnh và không có giới hạn tốc độ cụ thể cho Decisions; cửa sổ 1.050.000 token của Luna là một con số trên trang mô hình, không phải của điểm cuối. Kiểm tra Cài đặt > Tổ chức > Giới hạn (hướng dẫn giới hạn tốc độ); hướng dẫn giới hạn tốc độ của chúng tôi bao gồm cách xử lý mã lỗi 429 ở cả hai bên.
Trạng thái và quyền truy cập
Decisions đã chuyển sang bản beta công khai vào ngày 06-10-2026, mở cửa cho tất cả các nhà phát triển theo thông báo; hướng dẫn cho biết OpenAI dự kiến GA "trong vài tuần tới", không có ngày cụ thể.
Jev đang ở giai đoạn truy cập sớm theo bài đăng ra mắt của TypeSafe, có đề cập đến danh sách chờ, và quyền truy cập trực tiếp vào api.typesafe.ai yêu cầu tài khoản TypeSafe console; cách truy cập Jev hướng dẫn các tuyến đường và khóa API Jev bao gồm việc tạo khóa. Tuyến thứ hai là Vercel AI Gateway, nơi Jev là typesafe-ai/jev, được gọi thông qua experimental_evaluate trong AI SDK (phiên bản 7.0.105 trở lên), theo nhật ký thay đổi của Vercel; tài liệu đánh giá của Vercel nói rằng nó không được hiển thị trên điểm cuối tương thích OpenAI của Gateway, và ở đó loại có/không là boolean, trả về xác suất đúng.
Kiểm soát dữ liệu
OpenAI cho biết Decisions hỗ trợ Giữ lại dữ liệu bằng không (Zero Data Retention) và sử dụng HIPAA cho các khách hàng đủ điều kiện, với lưu trú dữ liệu và xử lý khu vực tại Hoa Kỳ và Châu Âu (EEA cộng với Thụy Sĩ); trang kiểm soát dữ liệu bổ sung rằng nhật ký giám sát lạm dụng cho /v1/decisions được giữ tối đa 30 ngày theo mặc định. TypeSafe cho biết Jev không được đào tạo trên các yêu cầu hoặc phản hồi của khách hàng, cung cấp ZDR cho khách hàng doanh nghiệp và chạy cùng trọng số cho mọi tài khoản.
Cả hai nhà cung cấp đều không công bố số liệu về độ chính xác hay hiệu chuẩn; hướng dẫn của OpenAI khuyên bạn nên đặt ngưỡng từ các ví dụ đã được gắn nhãn của riêng mình, và điều đó cũng áp dụng cho Jev.
Tốc độ, vậy nên chọn cái nào
OpenAI cho biết Decisions nhanh hơn khoảng 10 lần so với API Responses và không công bố con số độ trễ tuyệt đối; một nhà phát triển trên diễn đàn OpenAI đã báo cáo các quyết định đầu vào hình ảnh trong khoảng 0.8 giây trên kết nối chậm. TypeSafe đưa ra con số 70 ms đến 500 ms từ đầu đến cuối cho Jev. Đó không phải là các phép đo có thể so sánh được, vì vậy hãy tự đo thời gian của cả hai trên phiếu hỗ trợ của bạn.
Chọn Decisions khi đầu vào bao gồm hình ảnh, khi bạn đã sử dụng OpenAI và muốn một khóa và một hóa đơn, hoặc khi bạn cần bảo hiểm HIPAA theo BAA của OpenAI. Chọn Jev khi đầu vào là văn bản, khi giá mỗi token thấp hơn quan trọng với khối lượng của bạn, hoặc khi bạn đã sử dụng Vercel AI Gateway.
Chạy cả hai trong vài tuần là hợp lý: chấm điểm từng cái dựa trên cùng một bộ dữ liệu đã được gắn nhãn, giữ lại đường cong ngưỡng tốt hơn và giữ cái còn lại làm phương án dự phòng. Nếu câu hỏi thực sự là Decisions so với nhãn Structured Outputs, hãy xem Decisions vs Responses; nếu không nhà cung cấp nào phù hợp với chính sách dữ liệu của bạn, có các lựa chọn thay thế Jev mã nguồn mở.
Kiểm tra cả hai trong một dự án Apidog
Hai môi trường. Tạo OpenAI với OPENAI_API_KEY và TypeSafe với TYPESAFE_API_KEY, mỗi môi trường có giá trị trong trường cục bộ để nó không bao giờ đồng bộ hóa với nhóm (môi trường và biến bí mật bao gồm phạm vi).
Hai yêu cầu đã lưu. POST https://api.openai.com/v1/decisions với Bearer {{OPENAI_API_KEY}} và phần thân đầu tiên ở trên; POST https://api.typesafe.ai/v1/systemone với Bearer {{TYPESAFE_API_KEY}} và phần thân thứ hai.
Một quy tắc xác nhận, áp dụng hai lần. Quy tắc kinh doanh: độ tin cậy trên 0.8 sẽ tự động định tuyến phiếu hỗ trợ, bất cứ điều gì thấp hơn sẽ chuyển đến hàng đợi xem xét. Với yêu cầu Decisions, xác nhận trạng thái 200, $.answers[0].choice bằng billing, $.answers[0].confidence lớn hơn 0.8, và $.usage.output_tokens bằng 0. Với yêu cầu Jev, xác nhận $.answers.department.choice bằng billing và $.answers.department.confidence lớn hơn 0.8.
Một kịch bản dựa trên dữ liệu. Đặt hai mươi phiếu hỗ trợ đã được gắn nhãn vào một tệp CSV với bộ phận dự kiến, chạy cả hai yêu cầu trên đó như một kịch bản kiểm thử, và xem độ tin cậy của API nào giảm xuống dưới 0.8 trên các hàng không rõ ràng. Đó là cách bạn chọn ngưỡng, và nó giúp phát hiện sự thay đổi mô hình trước khi các phiếu hỗ trợ bị định tuyến sai.
Giả lập cả hai định dạng. Lưu một phản hồi Decisions và một phản hồi Jev dưới dạng giả lập để giao diện người dùng có thể được xây dựng dựa trên một mảng answers và đối tượng answers ổn định; giả lập các phản hồi có điều kiện trả về trường hợp độ tin cậy thấp theo yêu cầu để thực hiện nhánh hàng đợi xem xét.
Chạy trong CI. Chạy kịch bản với Apidog CLI (apidog run với trình báo cáo cli hoặc junit) trên mỗi lần triển khai, để một thay đổi trường tại GA hoặc việc cập nhật jev-latest sẽ làm cho bản dựng thất bại, chứ không phải hàng đợi hỗ trợ. Tải Apidog để thiết lập điều này.
Câu hỏi thường gặp
Jev có phải là LLM giống như GPT-6 Luna không? Không. TypeSafe mô tả Jev là một mô hình System One được đào tạo với RLCD để đưa ra các quyết định đã hiệu chỉnh; nó không tạo ra văn bản. Decisions là một điểm cuối trên mô hình Luna đa năng.
OpenAI có xây dựng API Decisions để đáp lại Jev không? Các trang của OpenAI không nói như vậy, và chúng tôi cũng không khẳng định điều đó. Cả hai đều cùng một ý tưởng: câu trả lời được phân loại với xác suất, tính phí dựa trên đầu vào.
Cái nào rẻ hơn? Jev, với 0.042 đô la cho mỗi 1 triệu token đầu vào so với 0.10 đô la; đối với một triệu phiếu hỗ trợ 500 token, 21 đô la so với 50 đô la.
Liệu cả hai có thể trả về lược đồ JSON của riêng tôi không? Không. Cả hai đều trả về các định dạng câu trả lời cố định; đối với các trường được trích xuất hoặc giải thích bằng văn bản, hãy sử dụng Structured Outputs trên API Responses.
Bước tiếp theo
Gửi hai yêu cầu curl ở trên với cùng một phiếu hỗ trợ, lưu cả hai vào Apidog, và thêm xác nhận độ tin cậy 0.8 vào mỗi cái. Sau đó, thay thế bằng hai mươi phiếu hỗ trợ của riêng bạn và xem API nào vượt qua ngưỡng của bạn thường xuyên hơn. Hướng dẫn cách sử dụng có các phiên bản Python và JavaScript.
