
DeepSeek V4 Flash Vision Exp API 사용법: 이미지 입력
deepseek-v4-flash-vision-exp를 공개했습니다. EvoLink는 Chat Completions, Messages, Responses 세 방식을 문서화했습니다. 이미지 Field만 추가하지 말고 기존 App에 맞는 Protocol을 선택하고 반환 Usage를 확인하며 실험 Route용 Fallback을 유지해야 합니다.image_url, Messages는 URL 또는 Base64 Source의 image Block, Responses는 input_image를 사용합니다. 아래 예시는 이 구조를 따릅니다. Traffic을 확대하기 전에 Production Account로 대표 이미지를 호출하세요.첫 이미지 호출 전 확인 사항
deepseek-v4-flash-vision-exp입니다. 세 Protocol의 Content Block은 서로 바꿔 쓸 수 없습니다.| 확인 | 통과 조건 | 이유 |
|---|---|---|
| Model ID | 정확한 ID 전송 | Text Flash는 이미지 증거를 처리하지 않음 |
| Protocol | 선택 Route에 이미지 입력 명시 | Text 호환이 Multimodal을 보장하지 않음 |
| Input | 대표 URL/Base64 성공 | 구조와 Validation이 다름 |
| Usage | Input/Output Usage 반환 | 승인 결과당 Cost 계산 |
| Billing | EvoLink Usage/Billing 반영 | 성공 Response만으로 과금 확인 불가 |
| Fallback | 검증된 Vision Route 확보 | -exp 변경·중단 가능성 |
Runtime 확인이 실패한 Workload는 검증된 Vision 모델에 유지하고 Vision Exp를 평가 대상으로 둡니다.
이미지 입력 Workflow
한 장 이상의 이미지와 구체적인 지시를 보내고 Protocol을 선택한 뒤 구조화 결과와 Usage를 검증하고 Traffic을 늘립니다. 검토하지 않은 한 번의 시각 답변만으로 Browser나 Agent가 되돌릴 수 없는 Action을 실행하면 안 됩니다.

깨끗한 Screenshot, 복잡한 UI, Scan 문서, 작은 Label의 Chart, 의도적으로 모호한 이미지를 포함한 평가 Set을 만들고 예상 Field나 결정을 먼저 정의하세요.
Protocol별 이미지 구조
Chat Completions: image_url
{
"model": "deepseek-v4-flash-vision-exp",
"messages": [{"role": "user", "content": [
{"type": "text", "text": "Return the visible error message and the UI state as JSON."},
{"type": "image_url", "image_url": {"url": "https://example.com/screenshot.png"}}
]}]
}user Message에 두고 정확한 Vision Exp ID를 사용하세요.Messages: image Block
{
"model": "deepseek-v4-flash-vision-exp",
"max_tokens": 1024,
"messages": [{"role": "user", "content": [
{"type": "image", "source": {"type": "url", "url": "https://example.com/invoice.png"}},
{"type": "text", "text": "Extract invoice number, date, currency, subtotal, tax, and total."}
]}]
}max_tokens가 필요하고 source.type은 base64 또는 url입니다. Text Flash/Pro는 실제 이미지를 처리하지 않고 대체할 수 있으므로 이미지 이해에는 Vision Exp를 지정해야 합니다.Responses: input_image
{
"model": "deepseek-v4-flash-vision-exp",
"input": [{"role": "user", "content": [
{"type": "input_text", "text": "Summarize the chart, then list every directly observed label."},
{"type": "input_image", "image_url": "https://example.com/chart.png"}
]}]
}input_image와 여러 이미지를 명시합니다. Streaming Event, Tool, Error는 Route별로 확인하고 이미지 지원만으로 Files API 전체 기능을 추정하지 마세요.URL, Base64, Files API 선택
| 방식 | 적합한 경우 | Production 확인 |
|---|---|---|
| Public URL | 공개 Asset 또는 짧은 Signed URL | Gateway 접근 가능, 민감 정보 없음 |
| Base64 Data URI | 작은 Private 이미지 | Request Limit 이내, Log에 Payload 미보관 |
| Files API | 재사용·관리 File | EvoLink가 지원, 수명, 권한 명시 |
큰 이미지는 접근 가능한 Signed URL, 작은 Private 이미지는 Base64가 적합합니다. EvoLink 문서 전에는 Files API 지원을 주장하지 않습니다. Upstream은 JPEG, PNG, GIF, WebP를 문서화하지만 Gateway의 Size, URL, Timeout, 이미지 수 Limit은 별도 확인합니다.
이미지 Cost 계산
완료 Task Cost = 이미지 Input + Text Input + Output + Retry + Agent/Tool 추가 Turn자동화 전 검증
| Workload | 승인 기준 | Escalation |
|---|---|---|
| 송장 추출 | 필수 Field 정확히 일치 | 누락/Checksum 불일치 시 사람 검토 |
| Screenshot QA | 상태와 Error Text 정확 | Crop 재시도 후 Review |
| Chart 분석 | Label과 해석 분리 | 근거 없는 숫자 Reject |
| UI Agent | 위험한 부작용 없는 Action | 되돌릴 수 없는 Action은 확인 |
HTTP 성공률이 아니라 승인 결과율을 측정하세요. Retry와 수동 수정이 많으면 저렴한 Route가 더 비쌀 수 있습니다.
자주 발생하는 오류
| 증상 | 원인 | 대응 |
|---|---|---|
| Model이 Enum에 없음 | ID 오류, 오래된 Cache, Account 권한 | ID/Access 확인, Text Flash로 대체 금지 |
| Image 미지원 | Text Model/Protocol | 문서화된 Vision Route 사용 |
| 400 invalid content block | 다른 Protocol 구조 | image_url, image, input_image 맞춤 |
| Image Fetch 실패 | Private, 만료, Redirect, Block | 접근 가능한 Signed URL/Base64 |
| Request 과대 | Base64/여러 이미지 Limit 초과 | Resize, 압축, 분할, 문서화된 File Route |
| 429/Timeout | 동시성/용량 | 제한 Retry, 병렬 축소, Failover |
RPM, TPM, File Size, Concurrency를 추정하지 말고 Route 문서와 Production Account로 검증하세요.
Production Rollout
- 선택 Protocol에서 URL/Base64 한 건 성공.
- Response, Usage, Billing, Error Log 확인.
- 고정 평가 Set으로 Vision Exp와 Fallback 비교.
- 소량 Traffic에서 승인 결과 Cost 측정.
- 품질, Latency, Error, Cost가 기준을 충족하면 확대.
Model ID는 Config에서 관리하세요. EvoLink 통합 Gateway는 한 실험 모델을 위해 Integration을 다시 만들지 않고 Route, Usage, Billing을 비교하게 합니다.
FAQ
정확한 Model ID는 무엇인가요?
deepseek-v4-flash-vision-exp이며 -exp를 유지해야 합니다.EvoLink에서 사용할 수 있나요?
네. 2026년 8월 21일 기준 Chat Completions, Messages, Responses의 이미지 이해가 문서화되어 있습니다.
deepseek-v4-flash에 이미지를 보낼 수 있나요?
이미지가 실제로 처리되지 않을 수 있습니다. 이미지 의존 Task는 Vision Exp나 검증된 Vision 모델을 사용하세요.
URL과 Base64 중 무엇을 쓰나요?
큰 접근 가능 Asset은 Signed URL, 작은 Private 이미지는 Limit 내 Base64를 사용합니다.
Files API를 지원하나요?
Upstream 문서만으로 EvoLink 각 Route 지원을 증명할 수 없습니다. EvoLink가 명시한 경우만 사용합니다.
이미지 한 장 Cost는?
DeepSeek 기준 최대 384 Input Token에 Text, Output, Retry, Agent Turn을 더하고 제품 페이지 Rate를 적용합니다.
이미지 Format은?
Upstream은 JPEG, PNG, GIF, WebP입니다. EvoLink Size, URL, 다중 이미지 Limit도 확인하세요.
Production 전에 무엇을 Test하나요?
쉬운/어려운 이미지, 구조화 출력, 작은 글자, 누락 Field, Latency, Retry, Usage, Billing, Fallback입니다.
출처
- EvoLink Chat
- EvoLink Messages
- EvoLink Responses
- DeepSeek Vision Guide
- Vision Exp Release
- DeepSeek Changelog
Model ID, 이미지 Field, Route Limit 변경 시 예제와 Billing을 다시 검증하세요.


