Image Describer API는 제공된 이미지와 프롬프트를 기반으로 정확하고 상세하며 통찰력 있는 이미지 설명을 지능적으로 생성하는 강력한 이미지 설명 생성 도구입니다. 이 AI 기반 이미지 인식 API는 이미지 콘텐츠를 이해하고 분석하여 프롬프트에 따라 해당 텍스트 설명을 생성합니다. 이미지 이해, 이미지 분석, 이미지 콘텐츠 생성과 관련된 다양한 시나리오에 널리 적용할 수 있어 이미지 질문 응답 및 이미지-텍스트 변환을 쉽게 구현할 수 있습니다.
Image Describer API는 다음 영역에서 이미지 이해 및 콘텐츠 생성을 효율적으로 수행하는 데 도움이 될 수 있습니다.
Image Describer API에 액세스하려면 먼저 유효한 API 키를 발급받아야 합니다. 이 키는 요청을 인증하고 API에 대한 안전한 액세스를 보장하는 데 사용됩니다.
중요: 다른 사람과 공유하거나 브라우저, 클라이언트 측 코드 또는 기타 안전하지 않은 위치에 노출하지 마십시오. 무단 액세스를 방지하기 위해 키를 안전하게 보관하십시오.
POST https://api.imagedescriber.app/api/v1/generate_content
| 헤더 | 유형 | 필수 | 설명 |
|---|---|---|---|
| content-type | string | 예 | `application/json` |
| authorization | string | 예 | `Bearer ${api_key}`, 여기서 `${api_key}`는 귀하의 API 키입니다. |
{
"image": "data:image/jpeg;base64,{image_base64_data}",
"prompt": "이 물체는 무엇입니까? 가능한 용도를 설명하십시오.",
"lang": "ko"
}
| 매개변수 | 유형 | 필수 | 설명 |
|---|---|---|---|
| image | string | 예 | 이미지의 URL 또는 Base64로 인코딩된 데이터. 지원되는 이미지 형식은 이미지 형식 세부 정보에 나열되어 있습니다. |
| prompt | string | 아니요 | 이미지에 대한 질문 또는 설명 요청. 예를 들어 "이게 뭐죠?" 또는 "이 이미지를 설명해 주세요." |
| lang | string | 아니요 | 반환된 설명의 언어 코드. 기본값은 `en`(영어)입니다. 지원되는 언어 코드는 아래에 나열되어 있습니다. |
| 코드 | 언어 |
|---|---|
| en | 영어 (기본값) |
| zh | 중국어 |
| fr | 프랑스어 |
| de | 독일어 |
| es | 스페인어 |
| ja | 일본어 |
| ko | 한국어 |
curl --location 'https://api.imagedescriber.app/api/v1/generate_content' \
--header 'content-type: application/json' \
--header 'authorization: Bearer your_api_key' \
--data '{
"image":"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQE...",
"prompt":"이 물체는 무엇입니까? 가능한 용도를 설명하십시오.",
"lang":"ko"
}'
import requests
import base64
def image_to_base64(image_path):
"""이미지를 Base64 인코딩으로 변환"""
with open(image_path, "rb") as image_file:
encoded_string = base64.b64encode(image_file.read()).decode("utf-8")
return encoded_string
def generate_image_description(api_key, image_path, prompt, lang="ko"):
"""Image Describer API를 사용하여 이미지 설명 생성"""
url = "https://api.imagedescriber.app/api/v1/generate_content"
headers = {
"content-type": "application/json",
"authorization": f"Bearer {api_key}"
}
image_base64_data = image_to_base64(image_path)
payload = {
"image": f"data:image/jpeg;base64,{image_base64_data}",
"prompt": prompt,
"lang": lang
}
response = requests.post(url, headers=headers, json=payload)
if response.status_code == 200:
result = response.json()
print(result["data"]["content"])
else:
print(f"오류: {response.status_code}")
print(response.text)
# 사용 예시
api_key = "your_api_key"
image_path = "your_image.jpg"
prompt = "이 물체는 무엇입니까? 가능한 용도를 설명하십시오."
generate_image_description(api_key, image_path, prompt, lang="ko")
import fs from 'fs';
// 서버 측 구현
const buffer = await fs.readFileSync("/temp/test.jpg");
const base64Image = buffer.toString('base64');
const imageData = `data:image/jpeg;base64,${base64Image}`;
// 클라이언트 측 구현
const file:File = /* input 또는 drop 이벤트의 파일 */;
const arrayBuffer = await file.arrayBuffer();
const bytes = new Uint8Array(arrayBuffer);
const base64Image = btoa(String.fromCharCode.apply(null, bytes as any));
const imageData = `data:${file.type};base64,${base64Image}`;
const body = {
"image": imageData,
"prompt": "이미지를 자세히 설명해 주세요",
"lang": "ko"
};
const response = await fetch('https://api.imagedescriber.app/api/v1/generate_content', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer {your_api_key}'
},
body: JSON.stringify(body),
});
const result = await response.json();
console.log(result);
이제 API는 전체 응답을 단일 JSON 객체로 반환합니다. data 객체 내의 content 필드에는 생성된 이미지 설명이 Markdown 형식으로 포함됩니다.
{
"code": 0,
"message": "성공",
"request_id": "고유 요청 ID 문자열",
"data": {
"content": "Markdown 형식으로 생성된 콘텐츠"
}
}
| 필드 | 유형 | 설명 |
|---|---|---|
| code | 숫자 | 상태 코드, `0`은 성공을 나타내고 `0`이 아닌 경우 오류를 나타냅니다. |
| message | 문자열 | 상태 메시지, 요청 상태를 설명합니다. |
| request_id | 문자열 | 고유 요청 ID, 추적 및 문제 해결에 사용됩니다. |
| data | 문자열 | 생성된 콘텐츠를 포함합니다. Markdown 형식입니다. |
| content | 문자열 | 생성된 이미지 설명 텍스트. 형식은 Markdown입니다. |
서비스 안정성과 공정성을 보장하기 위해 각 API 키는 **분당 30회 요청(시간당 1800회 요청)**으로 제한됩니다. 이 제한을 초과하는 요청은 오류 코드 1004와 함께 거부됩니다.
크레딧을 더 얻는 방법은 무엇입니까?
더 많은 API 호출을 지원하기 위해 크레딧 충전 페이지를 방문하여 크레딧 패키지를 구매할 수 있습니다. 다양한 사용자의 요구를 충족시키기 위해 다양한 패키지를 제공합니다.
다음 표에는 일반적인 오류 코드, 그 의미 및 해결 방법이 나열되어 있습니다.
| 오류 코드 | 설명 | 해결 방법 |
|---|---|---|
| 1002 | 인증되지 않음 | `authorization` 헤더가 올바르게 설정되었는지 확인하십시오. |
| 1003 | 잘못된 API 키 | API 키가 올바른지 확인하거나 새 API 키를 받으십시오. |
| 1004 | 요청 과다 | 요청 빈도를 줄이십시오. 분당 최대 30회 요청입니다. |
| 1005 | 잘못된 매개변수 | 요청 매개변수가 사양을 준수하는지 확인하십시오. |
| 2002 | 크레딧 부족 | 크레딧을 충전하십시오. |
| 2003 | 필터에 의해 차단된 콘텐츠 | 콘텐츠가 규정을 준수하도록 이미지 또는 프롬프트를 수정하십시오. |
| 2004 | 잘못된 이미지 형식 | 지원되는 이미지 형식을 사용하십시오. 이미지 형식 세부 정보를 참조하십시오. |
| 2005 | 이미지 업로드 실패 | 이미지 URL이 유효한지 확인하거나 나중에 다시 업로드해 보십시오. |
| 5050 | 내부 서버 오류 | 기술 지원 팀에 문의하여 `request_id`를 제공하십시오. |
현재 지원되는 이미지 형식은 JPG, JPEG, PNG, WebP입니다. 최대 이미지 크기는 4MB입니다.
질문이나 제안 사항이 있으면 다음 방법을 통해 언제든지 문의해 주십시오.
지금 Image Describer API 사용을 시작하고 이미지 이해의 무한한 가능성을 열어보십시오!