본문 바로가기
Android Project/지키미

ChatGpt API 사용하기

by juwon2 2025. 6. 8.

 

 

 

💻 구현하기

https://platform.openai.com/settings/proj_zzb8f03TCYi7XeHCuL1KIZtZ/api-keys

여기 사이트 들어가서, 왼쪽 바에서 API Keys 클릭하면 아래와 같은 화면이 나올것이다.

 

 

Create new secret key 클릭해서 키를 생성해주자

키는 한번 발급하면 재발급해야되므로 메모장에 저장해두자

 

 

그리고 이 API는 결제를 해줘야 API호출을 할 수 있어서 카드를 등록해 결제해줘야한다ㅠㅠ

 

https://platform.openai.com/settings/organization/billing/overview

해당 사이트 들어가서 카드를 등록해주자.

나는 일단 기본 5달러가 청구되도록 설정해두었다. 약 7천몇백원정도가 빠져나갔다

 

 

 

💻 Postman test

그런다음 postman으로 잘 호출이 되는지 확인해보자.

 

 

 

 

POST 요청으로 기본 base url은 https://api.openai.com/v1/chat/completions 이걸로 설정해준다.

Content-Type은  application/json로 설정해서 json형태로 출력되게하고

Authorization은  Bearer {발급받은 api키} 형태로 작성해준다.

 

 

그런다음 body - row를 설정해서 위와 같이 작성해준다.

model은 현재로서는 3.5, 4모델이 있는데 3.5는 속도가 빠르고 비용이 저렴하고 간단한 질문에 최적화되어있다

반면 4는 비용이 높고, 응답 시간이 약간 느릴수있지만 정교하고 논리적인 작업에 적합하다.

 

나는 취준생이라... 비용문제도 걱정되고, 애초에 구현할 부분이 간단한 응답이라서 3.5로 결정했다!

 

messages: 대화 형식으로, system, user, assistant 역할을 구분해 작성.

max_tokens: 응답으로 받을 최대 토큰 수

temperature: 응답의 창의성 정도 (0.0 ~ 1.0)

 

 

 

 

상세한 요청,응답 구조는 아래와 같다.

간단하게 설명해보면, "오늘날씨어때?" 라고 질문하니, "오늘 날씨는 맑고 따뜻합니다." 라는 응답이 나온것을 확인할 수 있다.

 

<요청>

{
  "model": "gpt-3.5-turbo",
  "messages": [
    { "role": "system", "content": "Be brief." },
    { "role": "user", "content": "오늘날씨어때?" }
  ],
  "max_tokens": 20,
  "temperature": 0.5
}

 

 

 

<응답>

{
    "id": "chatcmpl-BfqyIwb0DNGQGklaQwL6RfWmjiLLW",
    "object": "chat.completion",
    "created": 1749314770,
    "model": "gpt-3.5-turbo-0125",
    "choices": [
        {
            "index": 0,
            "message": {
                "role": "assistant",
                "content": "오늘 날씨는 맑고 따뜻합니다.",
                "refusal": null,
                "annotations": []
            },
            "logprobs": null,
            "finish_reason": "stop"
        }
    ],
    "usage": {
        "prompt_tokens": 26,
        "completion_tokens": 19,
        "total_tokens": 45,
        "prompt_tokens_details": {
            "cached_tokens": 0,
            "audio_tokens": 0
        },
        "completion_tokens_details": {
            "reasoning_tokens": 0,
            "audio_tokens": 0,
            "accepted_prediction_tokens": 0,
            "rejected_prediction_tokens": 0
        }
    },
    "service_tier": "default",
    "system_fingerprint": null
}

 

 

 

이제 postman으로 잘 불러오는걸 확인했으니깐, 해당 API를 활용해서 앱을 만들어볼 예정이다.

gpt api를 내가 원하는 방향에 맞게 학습시키는 것을 '파인튜닝'이라고 한다는데, 파인튜닝을 해서 앱을 만들어보려한다.

조금더 찾아보니깐 파인튜딩, 프롬프트 엔지니어링 등을 통해 학습시킬 수 있다고한다.

 

근데 해당 API비용은 토큰수, 즉, 글자수로 청구되기때문에 테스트할때는 글자수를 최대한,,,,, 줄여서 테스트하는게 좋을것같다!

 

 

 

📚 참고자료

https://platform.openai.com/docs/api-reference/introduction

https://hyunicecream.tistory.com/78