개발로그/자동화
                
              n8n에서 RAG system을 만드는 과정 중, openAI의 embeded 용 모델을 확인하는 방법
                그리너리디밸로퍼
                 2025. 6. 16. 13:57
              
              
            
            참고링크 : https://platform.openai.com/docs/api-reference/models/list
첫번째. 임베디드용 모델 사용 (Chat 모델이 아님 주의)
HTTP Request 노드를 이용해서 OPENAI를 사용하고자 할때, API-KEY와 model 값을 필요로하게 됩니다.
이때, 사용할 수 있는 모델은 chat용 gpt-4o-xx 와 같은 것이 아니라 임베디드용 모델을 사용해야합니다.
curl https://api.openai.com/v1/models \
  -H "Authorization: Bearer $OPENAI_API_KEY"
위 , curl 명령어를 통해 응답을 받으면,
{
  "object": "list",
  "data": [
    {
      "id": "model-id-0",
      "object": "model",
      "created": 1686935002,
      "owned_by": "organization-owner"
    },
    {
      "id": "model-id-1",
      "object": "model",
      "created": 1686935002,
      "owned_by": "organization-owner",
    },
    {
      "id": "model-id-2",
      "object": "model",
      "created": 1686935002,
      "owned_by": "openai"
    },
  ],
  "object": "list"
}이렇게 생긴 긴 응답을 받게 됩니다. 여기서 알고 가야할 점은, 실제로는 chat model와 tts 모델같은 것들이 섞여서 나온다는 것입니다.
반드시 아래와 같이 , "text-embedding-xx" 인 모델명을 사용해야합니다.
      "id": "text-embedding-ada-002",
      "object": "model",
      "created": 1671217299,
      "owned_by": "openai-internal"
    }
두번째, curl(컬 또는 씨유알엘)의 호출은 git bash나 powershell 을 이용
curl은 터미널에서 사용하는 것을 기본으로 알고있지만, 혹시나 에러가 발생한다면 git bash나 powershell 을 이용하시기 바랍니다. 엉뚱한 곳에서 실행시키면. 에러가 나기 때문..!@#%#ㅉ!#$!@#%

세번째. HTTP Request 노드의 설정 방법 (2025-06월 n8n 기준)
항목 설정
| Method | POST | 
| URL | https://api.openai.com/v1/embeddings | 
| Authentication | Predefined Credential Type (OpenAI) ✅ | 
| Headers | |
| - Content-Type | application/json (자동 입력됨) | 
| Body Content Type | JSON | 
| Body Parameters | |
| - input | {{ $json.chunk }} ← 이건 이전 단계에서 분할한 텍스트 | 
| - model | "text-embedding-3-small" 또는 "text-embedding-ada-002" | 
이상입니다.
다음은 OpenAI: Rate limit reached

을 해결하는 방법을 작성해 보겠습니다. (왜냐면 제가 지금 걸렸거등효...)
728x90