본문 바로가기
컴퓨터 활용(한글, 오피스 등)/기타

AI/LLM API 호출 코드 temperature: 0.7 의미

by 3604 2026. 8. 12.
728x90

대부분의 AI/LLM API 호출 코드에서 temperature: 0.7은 모델이 답변을 생성할 때의 '창의성'과 '무작위성(Randomness)'을 조절하는 파라미터입니다.

이 값은 보통 0.0에서 2.0 사이의 실수(float) 값을 가집니다.

1. temperature의 역할

  • 값이 낮을수록 (0.0에 가까울 때)
    • 특징: 정돈됨, 보수적, 예측 가능함, 일관성 높음.
    • 원리: 다음 단어를 선택할 때 가장 확률이 높은 단어만 집요하게 선택합니다.
    • 적합한 작업: 코드 작성, 수학 문제 풀이, Fact 기반 질문, JSON/XML 형태의 정형 데이터 생성.
  • 값이 높을수록 (1.0 이상)
    • 특징: 창의적, 다양함, 예측하기 어려움, 엉뚱함(할루시네이션 위험 증가).
    • 원리: 확률이 약간 낮은 단어들도 채택될 기회를 얻습니다.
    • 적합한 작업: 시 쓰기, 브레인스토밍, 소설 작성, 게임 NPC 대화 생성.

2. 0.7이라는 값의 의미

0.7은 가장 흔하게 사용되는 표준(Default) 균형값입니다.

  • 너무 딱딱하지 않으면서도, 문맥에서 벗어나지 않는 자연스럽고 유연한 대화를 원할 때 가장 많이 사용합니다.
  • 일반적인 챗봇, 블로그 글 작성, 아이디어 확장 등에 적합한 설정입니다.

3. Rust 코드에서의 예시

Rust의 OpenAI SDK나 Reqwest/Serde 등을 이용한 구조체 설정에서는 보통 다음과 같이 작성됩니다.

Rust
 
use serde::Serialize;

#[derive(Serialize)]
struct CompletionRequest {
    model: String,
    prompt: String,
    temperature: f32, // Rust에서는 주로 f32 또는 f64로 정의
}

fn main() {
    let request = CompletionRequest {
        model: "gpt-4o".to_string(),
        prompt: "Rust 언어의 장점을 3가지로 요약해줘.".to_string(),
        temperature: 0.7, // 창의성과 일관성의 균형점
    };
    
    // ... API 요청 전송 ...
}

💡 한눈에 보는 추천 설정 가이드

목적 / 작업 유형 추천 Temperature 이유
코드 생성, 데이터 추출 (JSON 등) 0.0 ~ 0.2 정답이 명확해야 하며 출력이 일관되어야 함
일반적인 대화, 요약, 번역 0.5 ~ 0.7 자연스러움과 문맥 유지를 동시에 챙김
아이디어 제안, 소설/시 작성 0.8 ~ 1.2 예상치 못한 창의적인 단어 조합이 필요함
728x90