이미지 분석 및 비전
Triggerfish는 모든 인터페이스에서 이미지 입력을 지원합니다. CLI 또는 브라우저에서 클립보드의 이미지를 붙여넣을 수 있으며 에이전트는 디스크의 이미지 파일을 분석할 수 있습니다. 기본 모델이 비전을 지원하지 않을 때 별도의 비전 모델이 이미지를 기본 모델에 도달하기 전에 자동으로 설명할 수 있습니다.
이미지 입력
CLI: 클립보드 붙여넣기 (Ctrl+V)
CLI 채팅에서 Ctrl+V를 눌러 시스템 클립보드에서 이미지를 붙여넣습니다. 이미지는 OS 클립보드에서 읽혀 base64로 인코딩되고 텍스트 메시지와 함께 멀티모달 콘텐츠 블록으로 에이전트에 전송됩니다.
클립보드 읽기 지원:
- Linux --
xclip또는xsel - macOS --
pbpaste/osascript - Windows -- PowerShell 클립보드 접근
Tidepool: 브라우저 붙여넣기
Tidepool 웹 인터페이스에서 브라우저의 네이티브 붙여넣기 기능(Ctrl+V / Cmd+V)을 사용하여 채팅 입력에 직접 이미지를 붙여넣습니다. 이미지는 데이터 URL로 읽혀 base64 인코딩 콘텐츠 블록으로 전송됩니다.
image_analyze 도구
에이전트는 image_analyze 도구를 사용하여 디스크의 이미지 파일을 분석할 수 있습니다.
| 매개변수 | 유형 | 필수 | 설명 |
|---|---|---|---|
path | string | 예 | 이미지 파일의 절대 경로 |
prompt | string | 아니오 | 이미지에 대한 질문 또는 프롬프트 (기본값: "Describe this image in detail") |
지원 형식: PNG, JPEG, GIF, WebP, BMP, SVG
도구는 파일을 읽고 base64로 인코딩한 다음 비전 가능 LLM 제공자에게 분석을 위해 전송합니다.
비전 모델 폴백
기본 모델이 비전을 지원하지 않을 때(예: Z.AI glm-5) 별도의 비전 모델을 구성하여 이미지가 기본 모델에 도달하기 전에 자동으로 설명하도록 할 수 있습니다.
작동 방식
- 이미지를 붙여넣거나(Ctrl+V) 멀티모달 콘텐츠를 전송합니다
- 오케스트레이터가 메시지에서 이미지 콘텐츠 블록을 감지합니다
- 비전 모델이 각 이미지를 설명합니다 ("Analyzing image..." 스피너가 표시됨)
- 이미지 블록이 텍스트 설명으로 대체됩니다:
[The user shared an image. A vision model described it as follows: ...] - 기본 모델이 설명이 포함된 텍스트 전용 메시지를 수신합니다
- 시스템 프롬프트 힌트가 기본 모델에 설명을 이미지를 볼 수 있는 것처럼 처리하도록 알립니다
이것은 완전히 투명합니다 -- 기본 모델이 비전을 지원하는지 여부에 관계없이 이미지를 붙여넣으면 응답을 받습니다.
구성
모델 구성에 vision 필드를 추가합니다:
yaml
models:
primary:
provider: zai
model: glm-5 # 비전이 없는 기본 모델
vision: glm-4.5v # 이미지 설명을 위한 비전 모델
providers:
zai:
model: glm-5vision 모델은 기본 제공자의 키체인 항목에서 자격 증명을 재사용합니다. 이 예에서 기본 제공자는 zai이므로 glm-4.5v는 zai 제공자에 대해 OS 키체인에 저장된 동일한 API 키를 사용합니다.
| 키 | 유형 | 설명 |
|---|---|---|
models.vision | string | 자동 이미지 설명을 위한 선택적 비전 모델 이름 |
비전 폴백 활성화 시기
models.vision이 구성된 경우에만- 메시지에 이미지 콘텐츠 블록이 포함된 경우에만
- 문자열 전용 메시지와 텍스트 전용 콘텐츠 블록은 폴백을 완전히 건너뜁니다
- 비전 제공자가 실패하면 오류가 우아하게 처리되고 에이전트가 계속합니다
이벤트
오케스트레이터는 비전 처리 중 두 가지 이벤트를 발생시킵니다:
| 이벤트 | 설명 |
|---|---|
vision_start | 이미지 설명 시작 (imageCount 포함) |
vision_complete | 모든 이미지 설명 완료 |
이 이벤트는 CLI 및 Tidepool 인터페이스에서 "Analyzing image..." 스피너를 구동합니다.
기본 모델이 이미 비전을 지원하는 경우(예: Anthropic Claude, OpenAI GPT-4o, Google Gemini) models.vision을 구성할 필요가 없습니다. 이미지는 멀티모달 콘텐츠로 기본 모델에 직접 전송됩니다. :::
