AI 에이전트 아키텍처: 모델 라우팅 및 도구 발견

AIHubMix8분 분량
AI 에이전트 아키텍처: 모델 라우팅 및 도구 발견

LLM을 연결하는 것만으로는 애플리케이션이 텍스트를 생성할 수 있습니다. 그러나 AI 에이전트가 실제 작업을 완료하도록 하려면 충분하지 않습니다.

모델에게 이미 그 맥락에 있는 문서를 요약해 달라고 요청하면 모델 레이어만으로 충분합니다. 오늘의 경쟁사 가격을 비교하거나, 회사 기록을 보강하거나, 소셜 계정을 확인하거나, 익숙하지 않은 작업에 가장 적합한 API를 선택해 달라고 요청하면, 누락된 절반이 분명해집니다: 에이전트는 외부 시스템에 접근할 수 있는 신뢰할 수 있는 방법이 필요합니다.

따라서 생산 에이전트는 두 가지 별도의 결정을 내립니다:

  1. 어떤 모델이 이 단계를 처리해야 합니까?
  2. 어떤 도구나 API가 데이터나 행동을 제공해야 합니까?

AIHubMix는 통합 모델 접근 및 요청 시 모델 라우팅으로 첫 번째 결정을 해결합니다. Monid는 런타임 도구 발견, 스키마 검사 및 호출당 실행으로 두 번째 결정을 해결합니다. 이 제품들은 동일한 아키텍처의 서로 다른 레이어에 위치합니다.

공개: 이 기사는 Monid와의 콘텐츠 협업의 일환으로 작성되었습니다. AIHubMix는 아래에서 논의된 모델 플랫폼이며, Monid는 도구 플랫폼입니다. 각각 독립적으로 사용할 수 있습니다.

AI 에이전트 내부의 두 가지 라우팅 문제

에이전트 실행은 드물게 하나의 동질적인 모델 호출로 이루어집니다. 연구 에이전트는 요청을 분류하고, 현재 정보를 검색하고, 구조화된 사실을 추출하고, 결과를 비교하고, 최종 답변을 작성할 수 있습니다. 이러한 단계는 서로 다른 능력을 요구합니다.

모델 외부에서도 마찬가지입니다. 회사 연구 작업은 오늘은 검색 API가 필요하고, 내일은 회사 보강 엔드포인트가 필요하며, 다음 주에는 브라우저 자동화 도구가 필요할 수 있습니다. 모든 모델과 도구가 빌드 시 하드코딩되어 있다면, 각 새로운 작업은 통합 프로젝트가 됩니다.

두 레이어는 병렬로 작동합니다:

모델 레이어 도구 레이어
핵심 결정 어떤 모델이 응답해야 합니까? 어떤 API를 호출해야 합니까?
선택 시간 요청당 작업당, 런타임에서
입력 프롬프트, 모달리티, 품질 및 지연 요구 사항 목표, 필요한 데이터 또는 행동, 스키마 및 가격
출력 모델 완료 외부 데이터 또는 실행된 행동
예시 AIHubMix Monid

이 분리는 중요합니다. 더 나은 모델이 실시간 데이터에 대한 접근을 생성할 수 없으며, 더 큰 도구 카탈로그가 반환하는 데이터에 대해 추론할 수 없습니다. 에이전트는 두 가지 능력이 모두 필요하며, 그들 간의 명확한 계약이 있어야 합니다.

Monid는 AI 에이전트가 두 가지 통합이 필요한 이유에서 보완적인 도구 측면의 관점을 제시합니다. 모델 측면에서 아키텍처의 교훈은 동일합니다: 모델 선택과 도구 선택을 독립적으로 유지한 다음, 각 레이어를 자신의 작업에 맞게 최적화합니다.

왜 하나의 고정 모델이 에이전트 루프에서 비쌀 수 있는가

시장 조사 에이전트를 고려해 보세요:

  • 의도 분류는 짧고 기계적입니다.
  • 도구 선택은 신뢰할 수 있는 지침 따르기가 필요합니다.
  • 반환된 JSON에서 필드를 추출하는 것은 대부분 변환입니다.
  • 최종 보고서는 더 강력한 추론과 더 나은 작성을 요구할 수 있습니다.

모든 네 단계를 가장 유능한 모델에 보내는 것은 일상적인 작업에 돈을 낭비하는 것입니다. 모든 네 단계를 가장 저렴한 모델에 보내면 사용자가 읽는 유일한 출력의 품질이 저하될 수 있습니다. 에이전트 루프가 커짐에 따라, 그 절충안은 모든 호출에 걸쳐 반복됩니다.

AIHubMix는 광범위한 모델 카탈로그에 걸쳐 OpenAI 호환 엔드포인트를 제공합니다. 기존 OpenAI SDK 통합은 API 키와 base_url를 변경하여 AIHubMix를 가리킬 수 있습니다:

from openai import OpenAI

client = OpenAI(
    api_key="<AIHUBMIX_API_KEY>",
    base_url="https://aihubmix.com/v1",
)

response = client.chat.completions.create(
    model="auto:balanced",
    messages=[
        {"role": "user", "content": "이 요청을 분류하고 다음 단계를 제안하십시오."}
    ],
)

modelauto로 설정하면 모델 선택이 요청 경로로 이동합니다. 라우터는 작업을 분석하고 적합한 모델로 해결합니다. 정책 접미사는 최적화 목표를 명확하게 만듭니다:

라우터 값 우선 순위 전형적인 에이전트 단계
auto 비용 우선 배치 작업 및 일상적인 변환
auto:balanced 능력, 비용 및 지연 일반 목적의 에이전트 작업
auto:quality_first 능력 우선 복잡한 추론 및 최종 결과물
auto:latency_critical 속도 우선 상호작용 루프 및 경량 계획

라우팅은 별도의 요금을 추가하지 않습니다. 요청은 실제로 처리한 모델의 목록 가격으로 청구됩니다. 해결된 모델 및 라우팅 세부정보는 응답에 노출되며, X-Aihubmix-Router-Resolved-Model 헤더를 포함하여 결정이 관찰 가능하게 유지됩니다.

전체 동작, 지원되는 엔드포인트, 정책 및 현재 제한 사항은 AIHubMix LLM Router 가이드에 문서화되어 있습니다.

모델 라우팅은 에이전트에 실시간 데이터를 제공하지 않습니다

모델 라우팅이 구성된 후, 에이전트는 각 단계에 대해 더 나은 두뇌를 선택할 수 있습니다. 그러나 모델의 훈련 데이터 이후에 무엇이 변경되었는지 알 수 없으며, 개인 비즈니스 시스템에 접근하거나 다른 애플리케이션에서 작업을 수행할 수 없습니다. 도구가 그 기능을 제공하지 않는 한 말입니다.

여기서 많은 에이전트 프로젝트가 부서지기 쉬운 코드를 축적하게 됩니다. 팀은 하나의 검색 API를 연결한 다음, 하나의 스크래핑 API, 그리고 하나의 보강 API를 연결합니다. 각 통합은 또 다른 계정, 자격 증명, 요청 형식, 오류 모델 및 청구 관계를 도입합니다. 도구 설명은 종종 시스템 프롬프트에 복사되어 서서히 오래된 것이 됩니다.

실패 모드는 성공적으로 보일 수 있기 때문에 위험합니다. 모델이 오래된 스키마에 대해 그럴듯한 호출을 생성하고, 불완전한 응답을 받고, 작업이 성공한 것처럼 계속 진행할 수 있습니다. 런타임 스키마 검사는 모델이 훈련 중 또는 오래된 프롬프트에서 API 계약을 기억하도록 요청하는 것보다 더 안전합니다.

따라서 도구 레이어는 실행 전에 세 가지 질문에 답해야 합니다:

  1. 이 목표를 충족할 수 있는 도구는 무엇입니까?
  2. 현재 적용되는 스키마와 가격은 무엇입니까?
  3. 호출이 실제로 반환한 결과는 무엇입니까?

도구 발견은 두 번째 라우팅 레이어입니다

Monid는 도구 접근을 발견-검사-실행 워크플로로 전환합니다. 에이전트가 필요할 수 있는 모든 API를 예측하도록 요구하는 대신, 에이전트는 자연어로 카탈로그를 검색하고, 후보의 계약을 검사하고, 선택한 엔드포인트를 실행할 수 있습니다.

기본 흐름은 다음과 같습니다:

# 1. 목표에 맞는 도구 찾기
monid discover -q "공식 웹 페이지에서 현재 제품 가격 찾기"

# 2. 선택한 엔드포인트의 스키마 및 가격 읽기
monid inspect -p PROVIDER_SLUG -e ENDPOINT_PATH

# 3. 에이전트가 계약을 확인한 후에만 실행
monid run -p PROVIDER_SLUG -e ENDPOINT_PATH \
  --query '{"url":"https://example.com/product"}'

발견 및 검사는 에이전트가 비용을 지출하기 전에 옵션을 비교할 수 있게 해줍니다. 실행은 선택한 엔드포인트의 가격 모델에 따라 청구됩니다. 개발자는 하나의 통합을 유지하면서 에이전트는 여러 공급자의 도구에 접근할 수 있습니다.

설정 지침을 읽을 수 있는 에이전트 런타임의 경우, Monid는 기계가 읽을 수 있는 기술도 게시합니다:

Set up https://monid.ai/SKILL.md

Monid 워크플로 문서는 카탈로그, 검사 및 실행 단계를 더 자세히 설명합니다.

두 레이어가 함께 작동하는 방법

모델 게이트웨이와 도구 레이어는 작은 명시적인 인계가 있는 별도의 구성 요소로 남아야 합니다:

  1. 에이전트는 사용자 목표를 수신합니다.
  2. AIHubMix는 적절한 모델로 계획 호출을 라우팅합니다.
  3. 계획은 누락된 정보나 필요한 외부 행동을 식별합니다.
  4. Monid는 후보 도구를 발견하고 그들의 스키마와 가격을 노출합니다.
  5. 에이전트는 자신의 권한과 예산 내에서 도구를 선택하고 실행합니다.
  6. 도구는 사실이나 행동 결과를 반환합니다.
  7. AIHubMix는 요구되는 품질, 비용 또는 지연에 따라 합성 호출을 라우팅합니다.
  8. 에이전트는 도구 결과에 기반한 답변을 반환합니다.

단순화된 Python에서 모델 측 호출은 변경되지 않은 상태로 유지되며 도구 결과가 맥락으로 삽입됩니다:

from openai import OpenAI

client = OpenAI(
    api_key="<AIHUBMIX_API_KEY>",
    base_url="https://aihubmix.com/v1",
)

# 경량 계획 단계에는 빠른 모델이 충분합니다.
plan = client.chat.completions.create(
    model="auto:latency_critical",
    messages=[
        {
            "role": "user",
            "content": "이 제품들의 현재 가격을 비교하는 방법을 계획하십시오.",
        }
    ],
)

# 귀하의 에이전트는 Monid를 사용하여 적절한 도구를 발견하고 검사하며 실행합니다.
# 이 자리 표시자를 해당 호출에서 반환된 구조화된 결과로 교체하십시오.
tool_result = {
    "source": "<source-url>",
    "data": "<structured-tool-result>",
}

report = client.chat.completions.create(
    model="auto:quality_first",
    messages=[
        {
            "role": "system",
            "content": (
                "간결한 비교를 작성하십시오. 제공된 도구 결과만 사용하고, "
                "출처 URL을 보존하며, 값이 누락된 경우 이를 명시하십시오."
            ),
        },
        {"role": "user", "content": str(tool_result)},
    ],
)

중요한 세부 사항은 줄 수의 문제가 아닙니다. 선택이 애플리케이션 논리에 영구적으로 내장될 필요가 없다는 것입니다. 프롬프트가 변경됨에 따라 모델이 변경될 수 있고, 작업이 변경됨에 따라 도구가 변경될 수 있습니다.

비용 통제는 두 레이어 모두에 속합니다

모델 및 도구 비용은 서로 다른 단위를 사용하므로 별도로 측정해야 합니다.

모델 레이어에서 해결된 모델은 토큰 가격을 결정합니다. AIHubMix는 해당 결정을 추적 가능하게 만들고 개발자가 라우팅 정책을 선택하거나 API 키가 사용할 수 있는 모델을 제한할 수 있게 합니다. 일상적인 단계는 비용이나 지연을 우선시할 수 있으며, 사용자에게 보여지는 출력은 품질을 우선시할 수 있습니다.

도구 레이어에서는 엔드포인트가 호출당 또는 결과당 요금을 부과할 수 있습니다. Monid는 실행 전에 검사 중 가격을 노출합니다. 에이전트는 예산을 초과하는 엔드포인트를 거부하거나, 검증된 옵션을 선호하거나, 비정상적으로 비싼 작업 전에 승인을 요청할 수 있습니다.

유용한 생산 통제에는 다음이 포함됩니다:

  • 각 API 키에 대한 모델 허용 목록 또는 가격 상한선.
  • 작업당 최대 도구 호출 예산.
  • 규제된 데이터에 대한 공급자 또는 엔드포인트 허용 목록.
  • 모델 라우팅 결정과 도구 호출 및 최종 답변을 연결하는 로그.
  • 되돌릴 수 없는 또는 민감한 작업 전에 명시적인 확인.
  • 도구 데이터가 신뢰할 수 없는 입력으로 처리되도록 출력 검증.

이 분리는 비용 디버깅을 더 쉽게 만듭니다. 실행이 비싸지면, 토큰 로그는 에이전트가 너무 많이 추론했는지 보여주고, 도구 로그는 너무 많은 데이터를 가져왔는지 보여줍니다. 수정 방법은 다르며, 아키텍처는 그 구분을 유지해야 합니다.

신뢰성은 신선한 계약과 가시적인 결정을 요구합니다

동적 선택은 예측할 수 없는 행동을 의미해서는 안 됩니다.

모델 측에서 AIHubMix는 각 요청에 대해 해결된 모델과 라우팅 정책을 보고합니다. 세션 지속성은 다중 턴 작업에서 모델 일관성과 프롬프트 캐시 이점을 유지할 수 있으며, 필요할 때 건강하지 않은 모델에서 벗어나는 폴백 동작을 수행할 수 있습니다.

도구 측에서 에이전트는 유료 호출을 하기 전에 현재 엔드포인트 스키마를 검사합니다. 발견 결과에는 후보를 비교하는 데 필요한 정보가 포함되며, 실제 호출의 결과는 최종 완료로 전달되는 유일한 외부 증거가 됩니다.

함께 이러한 통제는 유용한 감사 추적을 생성합니다:

user goal
  -> routing decision and resolved model
  -> discovered tool candidates
  -> inspected schema and price
  -> selected endpoint and result
  -> final model decision and grounded response

그 추적은 많은 모델이나 많은 API에 접근하는 것보다 더 가치가 있습니다. 그것은 에이전트가 각 선택을 한 이유와 그 답변을 뒷받침하는 증거를 설명합니다.

두 레이어가 모두 필요하지 않을 때

모든 워크플로가 런타임 선택의 이점을 누리는 것은 아닙니다.

애플리케이션이 하나의 안정적인 프롬프트를 하나의 벤치마크 모델에 보내는 경우, 해당 모델을 직접 지정하는 것이 라우팅보다 더 간단하고 결정론적입니다. 예약된 파이프라인이 항상 하나의 알려진 API를 호출하는 경우, 해당 API를 직접 통합하는 것이 발견 레이어를 추가하는 것보다 더 명확할 수 있습니다.

두 레이어 아키텍처는 다양성이 작업량의 일부일 때 그 자리를 차지합니다:

  • 프롬프트가 충분히 달라서 최상의 모델이 단계별로 변경됩니다.
  • 에이전트가 여러 모델 호출을 하고 누적 비용이나 지연을 제어해야 합니다.
  • 필요한 도구를 빌드 시 완전히 예측할 수 없습니다.
  • 외부 데이터는 최신이어야 하며 그 출처는 가시적이어야 합니다.
  • 팀은 각 기능에 대해 새로운 공급자 통합을 추가하지 않고도 기능을 추가하고 싶습니다.

귀하의 애플리케이션이 실제로 내려야 하는 결정에 따라 모델 레이어, 도구 레이어 또는 두 가지 모두를 사용하십시오.

결정이 아닌 의존성을 중심으로 에이전트를 구축하십시오

생산 AI 에이전트는 얼마나 많은 모델이나 API에 접근할 수 있는지에 의해 정의되지 않습니다. 현재 단계에 맞는 올바른 능력을 선택할 수 있는지, 예산 내에서 운영할 수 있는지, 그리고 무슨 일이 있었는지를 설명할 수 있는지에 의해 정의됩니다.

AIHubMix는 에이전트에게 비용, 품질 및 지연 우선 순위에 걸쳐 통합 모델 엔드포인트 및 요청 시 라우팅을 제공합니다. Monid는 런타임 도구 발견, 현재 스키마, 가시적인 가격 및 외부 공급자에 대한 실행을 제공합니다.

한 레이어는 에이전트가 어떻게 생각하는지를 결정합니다. 다른 레이어는 에이전트가 어떻게 알아내고 행동하는지를 결정합니다. 이러한 결정을 분리하면 확장 가능하고 관찰 가능하며 제어하기 쉬운 에이전트를 생성할 수 있습니다.

AIHubMix 빠른 시작로 시작한 다음, Monid를 통해 도구 측을 연결하십시오.

자주 묻는 질문

AI 에이전트를 위한 모델 라우팅이란 무엇입니까?

모델 라우팅은 작업 유형, 능력, 비용 및 지연과 같은 요소에 따라 각 요청에 대한 모델을 선택합니다. AIHubMix를 사용하면 modelauto 또는 auto:quality_first와 같은 정책으로 설정하여 요청 시 선택을 가능하게 하면서 OpenAI 호환 API를 유지할 수 있습니다.

LLM이 이미 지식을 가지고 있다면 AI 에이전트는 왜 도구가 필요합니까?

LLM은 수신한 맥락과 훈련 중에 배운 내용을 바탕으로 답변을 생성합니다. 연결된 도구 없이 현재 가격을 신뢰할 수 있게 알거나, 개인 데이터베이스를 쿼리하거나, 외부 작업을 수행할 수 없습니다. 도구는 실시간 데이터와 실행을 제공하며, 모델은 결과를 계획하고 해석합니다.

모델 게이트웨이는 MCP 서버나 도구 플랫폼과 동일합니까?

아니요. 모델 게이트웨이는 추론 요청을 모델로 라우팅합니다. MCP 서버와 도구 플랫폼은 에이전트에 외부 기능을 노출합니다. 이들은 보완적인 통합 문제를 해결하며 함께 사용할 수 있습니다.

AIHubMix와 Monid는 독립적으로 사용할 수 있습니까?

네. AIHubMix는 동적 도구 요구 사항이 없는 애플리케이션을 위해 모델 호출을 라우팅할 수 있습니다. Monid는 다른 모델 제공자나 게이트웨이를 사용하는 에이전트에 도구 발견을 제공할 수 있습니다. 두 가지를 함께 사용하는 것은 에이전트가 두 레이어 모두에서 런타임 선택이 필요할 때 유용합니다.

자동 라우팅을 감사 가능하게 유지하려면 어떻게 해야 합니까?

각 작업에 대해 해결된 모델, 라우팅 정책, 도구 후보, 검사된 가격, 선택된 엔드포인트 및 반환된 결과를 기록하십시오. AIHubMix는 응답에서 모델 라우팅 세부정보를 노출하며, Monid는 도구 결정을 유료 호출 전에 기록할 수 있도록 발견 및 검사를 실행과 분리합니다.