Cencori 프로바이더

Cencori 프로바이더

Cencori는 AI 애플리케이션을 위한 통합 인프라 레이어예요. 단일 API 하나로 보안, 관측성(observability), 멀티 프로바이더 지원을 내장하고 있어요.

Cencori를 사용하면 다음과 같은 기능을 얻을 수 있어요:

  • 멀티 프로바이더 게이트웨이: OpenAI, Anthropic, Google Gemini, Mistral, DeepSeek 등을 하나의 API로 접근
  • 내장 보안: 자동 PII(개인정보) 탐지, 프롬프트 인젝션 보호, 콘텐츠 필터링
  • 완전한 관측성: 모든 요청에 대한 전체 감사 로그, 분석, 비용 추적
  • 투명한 과금: 실시간 비용 확인이 가능한 크레딧 기반 결제

출처: 문서

본문

설정 (Setup)

Cencori 프로바이더는 cencori 모듈에서 사용할 수 있어요. 다음과 같이 설치할 수 있어요:

프로바이더 인스턴스 (Provider Instance)

Cencori 프로바이더 인스턴스를 만들려면 createCencori 함수를 사용하세요:

import { createCencori } from 'cencori/vercel';

const cencori = createCencori({
  apiKey: 'YOUR_...EY',
});

Cencori API 키는 Cencori 대시보드에서 받을 수 있어요.

환경 변수 (Environment Variable)

또는 CENCORI_API_KEY 환경 변수를 설정하고 기본 프로바이더를 사용할 수 있어요:

import { cencori } from 'cencori/vercel';

// CENCORI_API_KEY 환경 변수를 사용
const model = cencori('gpt-4o');

언어 모델 (Language Models)

Cencori는 여러 제공업체의 언어 모델에 대한 접근을 제공해요. 프로바이더 함수를 직접 사용해 모델을 만들 수 있어요:

// OpenAI 모델
const gpt4o = cencori('gpt-4o');
const gpt4oMini = cencori('gpt-4o-mini');

// Anthropic 모델
const claude = cencori('claude-3-5-sonnet');
const opus = cencori('claude-3-opus');

// Google Gemini 모델
const gemini = cencori('gemini-2.5-flash');
const geminiPro = cencori('gemini-3.1-pro-preview');

// 기타 프로바이더
const mistral = cencori('mistral-large');
const deepseek = cencori('deepseek-v3.2');
const grok = cencori('grok-4');
const llama = cencori('llama-3-70b');

사용 가능한 전체 모델 목록은 Cencori 문서에서 확인할 수 있어요.

예시 (Examples)

다음은 AI SDK와 함께 Cencori를 사용하는 예시예요:

generateText

import { cencori } from 'cencori/vercel';
import { generateText } from 'ai';

const { text } = await generateText({
  model: cencori('gpt-4o'),
  prompt: 'What is Cencori?',
});

console.log(text);

streamText

import { cencori } from 'cencori/vercel';
import { streamText } from 'ai';

const result = streamText({
  model: cencori('claude-3-5-sonnet'),
  prompt: 'Write a short story about AI safety.',
});

for await (const chunk of result.textStream) {
  console.log(chunk);
}

도구 호출 (Tool Calling)

Cencori는 호환되는 모든 모델에서 도구 호출을 지원해요:

import { cencori } from 'cencori/vercel';
import { generateText, tool } from 'ai';
import { z } from 'zod';

const { text, toolCalls } = await generateText({
  model: cencori('gpt-4o'),
  prompt: 'What is the weather in San Francisco?',
  tools: {
    getWeather: tool({
      description: 'Get the weather for a location',
      inputSchema: z.object({
        location: z.string().describe('The city and state'),
      }),
      execute: async ({ location }) => {
        return { temperature: 72, condition: 'sunny', location };
      },
    }),
  },
});

console.log(text, toolCalls);

Next.js 라우트 핸들러 (Route Handler)

import { cencori } from 'cencori/vercel';
import { streamText } from 'ai';

export async function POST(req: Request) {
  const { messages } = await req.json();

  const result = streamText({
    model: cencori('gemini-2.5-flash'),
    messages,
  });

  return result.toDataStreamResponse();
}

useChat 훅 (useChat Hook)

'use client';

import { useChat } from '@ai-sdk/react';

export default function Chat() {
  const { messages, input, handleInputChange, handleSubmit } = useChat({
    api: '/api/chat',
  });

  return (
    <div>
      {messages.map(m => (
        <div key={m.id}>
          {m.role}: {m.content}
        </div>
      ))}
      <form onSubmit={handleSubmit}>
        <input value={input} onChange={handleInputChange} />
        <button type="submit">Send</button>
      </form>
    </div>
  );
}

고급 기능 (Advanced Features)

Cencori는 AI 애플리케이션을 향상시키는 여러 고급 기능을 제공해요:

  1. 내장 보안 (Built-in Security): 모든 요청은 PII 탐지, 프롬프트 인젝션 보호, 유해 콘텐츠 필터링을 포함한 자동 안전 필터를 거쳐요. 안전 정책을 위반하는 요청은 모델에 도달하기 전에 차단돼요.

  2. 멀티 프로바이더 라우팅 (Multi-Provider Routing): 코드 변경 없이 15개 이상의 AI 제공업체(OpenAI, Anthropic, Google, Mistral, DeepSeek, xAI 등) 사이를 전환할 수 있어요. Cencori가 라우팅을 자동으로 처리해요.

  3. 비용 추적 (Cost Tracking): 모든 요청에 대한 실시간 비용 추적과 분석을 제공해요. 대시보드에서 모델·프로바이더·프로젝트별 상세 내역을 확인할 수 있어요.

  4. 완전한 감사 로그 (Complete Audit Logs): 모든 요청은 컴플라이언스와 디버깅을 위해 전체 페이로드, 토큰 사용량, 비용, 안전 점수와 함께 기록돼요.

  5. 자체 API 키 사용 (Bring Your Own Keys, BYOK): Cencori의 보안·관측성 레이어의 혜택을 누리면서도 각 프로바이더에 자신의 API 키를 사용할 수 있어요.

  6. 프로바이더 장애 조치 (Provider Failover): 기본 프로바이더를 사용할 수 없으면 백업 프로바이더로 자동 전환돼요.

이 기능들과 고급 설정 옵션에 대한 자세한 내용은 Cencori 문서를 참고하세요.

프로바이더 옵션 (Provider Options)

추가 옵션으로 프로바이더를 커스터마이즈할 수 있어요:

import { createCencori } from 'cencori/vercel';

const cencori = createCencori({
  apiKey: 'YOUR_...EY',
  baseUrl: 'https://cencori.com', // 커스텀 기본 URL (선택)
  headers: {
    // 커스텀 헤더 (선택)
    'X-Custom-Header': 'value',
  },
});

모델별 옵션 (Model-Specific Options)

모델별 옵션도 전달할 수 있어요:

const model = cencori('gpt-4o', {
  userId: 'user-123', // 사용자별 사용량 추적
});

더 알아보기 (Learn more)

전체 사이트맵