Hub documentation

SDK를 활용한 빌드

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

SDK를 활용한 빌드

Hugging Face의 에이전틱 SDK를 사용하여 MCP 기반 에이전트를 구축합니다. huggingface_hub(Python) 및 @huggingface/tiny-agents(JavaScript) 라이브러리는 LLM을 MCP 도구에 연결하는 데 필요한 모든 것을 제공합니다.

설치

Python
JavaScript
pip install "huggingface_hub[mcp]"

빠른 시작: 에이전트 실행

가장 빠르게 시작하는 방법은 tiny-agents CLI를 사용하는 것입니다:

Python
JavaScript
tiny-agents run julien-c/flux-schnell-generator

이것은 tiny-agents collection에서 에이전트를 로드하고, 해당 MCP 서버에 연결한 후, 대화형 채팅을 시작합니다.

Agent 클래스 사용

Agent 클래스는 채팅 루프와 MCP 도구 실행을 관리합니다. LLM 실행에 Inference Providers를 사용합니다.

Python
JavaScript
from huggingface_hub import Agent
import asyncio

agent = Agent(
    model="Qwen/Qwen2.5-72B-Instruct",
    provider="novita",
    servers=[
        {
            "type": "sse",
            "url": "https://huggingface.co/proxy/evalstate-flux1-schnell.hf.space/gradio_api/mcp/sse"
        }
    ]
)

async def main():
    async for chunk in agent.run("Generate an image of a sunset"):
        if hasattr(chunk, 'choices'):
            delta = chunk.choices[0].delta
            if delta.content:
                print(delta.content, end="")

asyncio.run(main())

모든 옵션은 Agent reference를 참조하세요.

MCPClient 직접 사용

더 세밀한 제어가 필요하면 MCPClient를 사용하여 MCP 서버와 도구 호출을 직접 관리하세요.

Python
JavaScript
import asyncio
from huggingface_hub import MCPClient

async def main():
    async with MCPClient(
        model="Qwen/Qwen2.5-72B-Instruct",
        provider="novita",
    ) as client:
        # Connect to an MCP server
        await client.add_mcp_server(
            type="sse", 
            url="https://huggingface.co/proxy/evalstate-flux1-schnell.hf.space/gradio_api/mcp/sse"
        )
        
        # Process a request with tools
        messages = [{"role": "user", "content": "Generate an image of a sunset"}]
        
        async for chunk in client.process_single_turn_with_tools(messages):
            if hasattr(chunk, 'choices'):
                delta = chunk.choices[0].delta
                if delta.content:
                    print(delta.content, end="")

asyncio.run(main())

모든 옵션은 MCPClient 참조를 확인하세요.

에이전트 공유하기

Hub의 tiny-agents collection에 에이전트를 기여하세요. 다음을 포함하세요:

  • agent.json - 에이전트 구성 (필수)
  • PROMPT.md 또는 AGENTS.md - 시스템 프롬프트 (선택 사항)
  • EXAMPLES.md - 샘플 프롬프트 및 사용 사례 (선택 사항)

자세히 알아보기

Update on GitHub