에이전트가 로컬에서 이미지 배경을 제거할 수 있습니다 — 클라우드 API가 필요하지 않음
요약
Skillware v0.4.5 출시와 함께 로컬에서 이미지 배경을 제거할 수 있는 'creative/bg_remover' 스킬이 공개되었습니다. 이 스킬은 클라우드 API 없이도 Gemini, Claude, OpenAI 등 다양한 LLM 에이전트 루프에서 즉시 실행 가능한 결정론적인 Python 기능을 제공합니다.
핵심 포인트
- 클라우드 API 없이 로컬에서 이미지 배경 제거 가능
- Skillware 레지스트리를 통해 다양한 LLM 모델과 호환
- rembg 라이브러리를 활용하여 투명 PNG 결과물 반환
- 결정론적인 Python 스킬로 에이전트의 실행 예측 가능성 확보
별도의 클라우드 API를 연결하거나 모델이 텍스트로 픽셀을 "편집"하기를 기대하지 않고도, 제품 사진, 인물 사진, 채팅 업로드 이미지 등의 이미지 배경을 제거하는 에이전트를 구축 중이신가요, 아니면 당신 자신이 바로 그 에이전트인가요?
Skillware에는 이를 위한 레지스트리 스킬이 있습니다: creative/bg_remover. 한 번 로드하면 어떤 에이전트 루프(agent loop)에서든 execute()를 호출할 수 있습니다. 동일한 스킬을 사용하므로 Gemini, Claude, OpenAI, DeepSeek 또는 Ollama에 대해 어댑터를 다시 작성할 필요가 없습니다.
Skillware v0.4.5에 포함되어 출시되었습니다. 작성자: @AyushSrivastava1818.
Skillware 요약
Skillware는 **설치 가능한 에이전트 기능(agent capabilities)**의 오픈 레지스트리입니다. 즉, 호환 가능한 모든 런타임(runtime)에서 로드할 수 있는 결정론적인(deterministic) Python 스킬입니다.
각 스킬은 다음과 같은 번들로 구성됩니다:
skill.py—execute()가 JSON을 반환하며, 핸들러 내부에 LLM이 포함되지 않음instructions.md— 모델이 도구(tool)를 호출해야 하는 시점 정의manifest.yaml— 스키마(schema), 헌법(constitution), 발행자(issuer), 요구 사항(requirements)- 테스트 및 카탈로그 문서 — wheel 파일에 포함되어 제공
SkillLoader.load_skill("category/skill_name")을 사용하여 스킬을 로드하고, 사용 중인 제공자(provider)에 맞게 조정하며, 지침(instructions)을 시스템 컨텍스트(system context)로 전달하고, 도구 호출(tool calls)을 execute()에 연결합니다. 모델은 언제 호출할지를 결정하고, 스킬은 어떻게 수행할지를 매번 예측 가능하게 결정합니다.
문서: skillware.site/documentation · 에이전트 루프(agent loops)
creative/bg_remover: 기능 설명
레지스트리 ID: creative/bg_remover
카탈로그: bg_remover.md
사이트: skillware.site/skills/bg-remover
rembg를 통한 로컬 배경 제거. Base64 이미지 데이터 또는 로컬 파일 경로를 전달하면, 너비(width), 높이(height), 그리고 model_used 메타데이터가 포함된 **투명 PNG (transparent PNG)**를 반환받습니다.
| 입력 (Input) | 목적 (Purpose) |
|---|---|
image | Base64 정지 이미지 (채팅 / 업로드 핸드오프) |
| ... | |
| 해당 스킬 자체를 위한 클라우드 인증 정보(cloud credentials)는 필요하지 않습니다. 처리는 사용자의 기기 내에서 유지됩니다. 규정(Constitution)은 명확합니다: 정지 이미지만 허용, 로컬 우선(local-first), 이미지 바이트 저장 금지, 잘못된 입력에 대한 구조화된 에러 반환. |
첫 실행 시: rembg가 isnet-general-use용 ONNX 모델(~176 MB)을 로컬 캐시로 다운로드합니다. 이후 실행 시에는 이를 재사용하므로 훨씬 빠릅니다. 프로바이더(Provider) API 키는 스킬을 둘러싼 LLM 루프를 위해서만 사용될 뿐, 배경 제거 자체를 위해서는 사용되지 않습니다.
에이전트(Agent) vs 스킬(Skill)
| 에이전트 (Agent) (LLM + 사용자 루프) | 스킬 (Skill) |
|---|---|
| “이 제품 사진에서 배경을 제거해줘”라는 문구를 파싱(Parse)함 | 바이트(bytes) 또는 파일 경로에 대해 rembg를 실행함 |
| ... | |
| 모델이 투명도를 그리는 것이 아닙니다. 스킬이 수행하는 것입니다. |
체험하기: 설치 및 직접 실행
pip install "skillware[creative_bg_remover]"
from skillware.core.loader import SkillLoader
bundle = SkillLoader.load_skill("creative/bg_remover")
...
채팅 핸드오프(chat handoff)의 경우, output_path를 생략하고 JSON에서 result["image_base64"]를 사용하세요.
체험하기: 모든 에이전트 루프
지갑 스크리닝(wallet screening), 토큰 제한(token limiting), 또는 UK Companies House와 동일한 패턴입니다. 번들(bundle)을 로드하고, 도구 스키마(tool schema)를 프로바이더에게 노출한 뒤, 도구 사용 시 skill.execute(tool_input)를 호출하세요:
from skillware.core.loader import SkillLoader
bundle = SkillLoader.load_skill("creative/bg_remover")
...
프로바이더별 코드 스니펫(snippets)은 스킬 페이지와 docs/skills/bg_remover.md에 있습니다.
설치 후 CLI 스모크 테스트(smoke test):
skillware test creative/bg_remover
에이전트에게 로컬 방식이 중요한 이유
클라우드 컷아웃 (Cloud cutout) API는 API 키, 지연 시간 (latency), 그리고 프로세스를 벗어나는 데이터 문제를 추가합니다. 이커머스 파이프라인 (ecommerce pipelines), 내부 도구, 또는 이미 파일과 Base64를 다루는 에이전트의 경우, 고정된 스키마 (fixed schema) 뒤에서 작동하는 오프라인 rembg가 감사 (audit)하기 더 쉽습니다. 즉, 하나의 execute() 계약을 가지며, CI에서 테스트 가능하고, 동일한 루프 내의 다른 스킬 (skills)들과 체이닝 (chainable)이 가능합니다.
만약 에이전트가 다단계 이미지 배치 (multi-step image batches) 작업을 수행한다면 monitoring/token_limiter와 함께 사용하세요. 제거 도구 (remover)가 내부적으로 결정론적 (deterministic)인 상태를 유지하는 동안, 외부 루프에서 비용을 제한할 수 있습니다.
링크 (Links)
- Skillware 사이트
- GitHub — ARPAHLS/skillware
- 스킬 소스 (Skill source)
- 카탈로그 페이지 (Catalog page)
- v0.4.5 릴리스 (v0.4.5 release)
- 스킬 라이브러리 (Skill library)
- 기여자 (Contributor): @AyushSrivastava1818
에이전트가 이미지를 다룬다면, 모델이 워크플로 (workflow)를 임의로 구성하기 전에 스킬을 로드하세요. 설치는 한 줄, 레지스트리 ID 하나, 어떤 호스트에서든 가능합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기