一個開發者 Allan Riordan Boll 於 9 月 25 日發布的 Python 範例將影像附件加入 Jev 風格的判斷請求。它把每個網路攝影機畫面連同簡短問題傳給視覺模型,再將模型下一個 token 的機率轉成是/否值、選項或分數。這是獨立的包裝器,不是 Jev 的視覺功能,也不是對 Jev 模型的測試。
對開發者而言,這項技術的適用範圍很重要。視覺模型可以不撰寫描述而回答受限問題,但回傳的選項機率取決於提示、可用的 token 替代項與模型。這篇文章提供可檢視的運作模式,並非準確度研究。
重大變化
- 改變了什麼:一名開發者將 Jev 相關的小型決策格式套用到通用視覺模型處理影像。每個請求都附上影像,而單一字母的回答會把視覺問題轉成軟體可處理的值。
- 為何重要:開發者可以用文字更改視覺判準並取得具型別的結果,無須為每個問題另外建立影像分類器。此範例涵蓋是否看見人或植物、場景位於室內或室外,以及亮度;它並未證明這些判斷能否可靠地套用到其他攝影機或場景。
- 值得觀察之處:實際上要判斷的是,選定的模型與端點能否穩定回傳任務所需的替代 token 分數。在網路攝影機的結果觸發動作前,應使用具代表性的影像,一併測量畫面處理量與判斷品質。
影像判斷如何運作
TypeSafe AI 的 Jev 快速入門文件記載一種具型別的state以及一組具型別的questions問題:noul適用於是/否值,choice適用於具名選項,score適用於有序級別。Boll 的程式使用這些名稱,並新增一個包含影像路徑或 base64 資料 URL 的陣列,也就是attachments。這個欄位是他對請求物件所做的擴充;引用的 Jev 快速入門文件描述文字狀態,但未將此欄位列為 Jev API 輸入。
每個問題都會建立含有字母選項的提示,例如[A] true與[B] false。程式要求模型以最適合的字母作答,並讀取第一個輸出 token 的top_logprobs。接著將回傳的對數機率取指數,在列出的字母間正規化權重,再對應到問題類型。choice會回傳權重最高的選項及其分布。noul會回傳true的權重。score會回傳有序級別的加權平均。如果省略的選項 token 仍可能帶有重要權重,程式就會拒絕該回應。
每個問題都會附上影像。此範例會分別送出請求,而非透過一次模型呼叫取得所有答案。OpenAI 路徑使用 Responses API 搭配input_image、top_logprobs及message.output_text.logprobs;本機 llama.cpp 路徑則使用 Chat Completions,並搭配image_url內容項目與對數機率。OpenAI 的影像指南說明 base64 影像資料 URL;其Responses 參考文件說明對數機率輸出,以及每個 token 位置最多回傳 20 個替代項。llama.cpp 伺服器文件說明聊天介面中的影像 URL。這些來源支持此請求模式;我們並未在任一端點上執行該範例。
網路攝影機範例測量什麼
程式使用 OpenCV 擷取畫面、編碼為 JPEG,並提出四個問題:是否看見人或植物、場景位於室內或室外,以及亮度如何。預覽持續顯示時,背景工作程序會一次評估一個畫面。攝影機設定使用 Linux V4L2,因此發布的檔案若不修改,並非可攜式的通用網路攝影機設定。文章文字稱每個畫面有三個問題,但發布的程式碼包含四個;此處以程式碼為計數依據。
Boll 回報約每秒評估一個畫面使用 RTX 3090 上本機服務的 Gemma 4 12B QAT 模型;他也回報使用託管 GPT-6 Luna 時約有每秒 0.2 個畫面。他推測重複連線可能影響託管結果。文章未對硬體、網路、影像大小、快取、準確度或請求時間進行受控比較。這些數字描述的是作者的設定與程式碼結果,不代表模型的一般速度排名。OpenAI 表示 GPT-6 Luna 可接受影像輸入,其模型指南指出 Luna 支援此範例使用的none推理設定。
開發者修改此程式時,應先進行具體檢查:確認模型接受影像輸入並提供所需的第一個 token 替代項;檢查所有選項字母是否都出現;再以目標攝影機或資料集的標記影像評估回傳的判斷。正規化權重是相對於列出的字母 token,而非視覺判斷正確與否的實測機率。OpenAI 的舊版 logprobs cookbook說明 token 機率的概念,但已標示為封存,API 範例也可能過時。
此包裝器也釐清了具型別結果留給應用程式程式碼處理的部分。模型依照文字判準判斷提供的影像;應用程式選擇畫面、處理缺少的分數,並決定結果是否安全到足以採取行動。Boll 的範例會輸出表格,但未報告自動化動作或經測量的部署。
來源與延伸閱讀
- Allan Riordan Boll,〈A Jev-like wrapper for LLMs, including vision models〉,2026 年 9 月 25 日:原始 Python 範例、網路攝影機工作流程,以及作者回報的畫面速率。文章文字稱每個畫面有三個問題;程式碼定義四個。這些時間數據不是獨立或受控的基準測試。
- TypeSafe AI,Jev 快速入門:記載文字狀態與
noul、choice及score等問題類型。文件未將作者自訂的attachments欄位列為 Jev API 功能。 - OpenAI,Images and vision:說明
input_image、影像 URL 與視覺輸入的 base64 資料 URL。Responses API 參考文件說明message.output_text.logprobs及回傳替代項的上限。 - OpenAI,GPT-6 Luna 模型與模型指南:確認影像輸入及模型的
none推理設定;模型指南詳述參數相容性。這些文件並未驗證部落格作者回報的處理量。 - llama.cpp 伺服器文件:說明 OpenAI 相容的聊天端點與影像 URL 輸入。仍需針對實際使用的版本與模型確認後端支援情形及回傳的 token 清單。
- OpenAI cookbook,Using logprobs:token 機率的背景說明。OpenAI 將此內容標示為封存,並提醒某些模型或 API 資訊可能已過時。



