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
'컴퓨터 활용(한글, 오피스 등) > 기타' 카테고리의 다른 글
| Dockerfile 동작 원리 (0) | 2026.08.12 |
|---|---|
| 윈도우 | 사용 중 포트 확인 및 사용 중 서비스명 찾기 (0) | 2026.08.12 |
| 리눅스 명령어 모음 (0) | 2026.08.12 |
| 폐쇄망 RAG 시스템 구축 가이드2 (WSL2 Ubuntu + Docker + Qwen 3 8B + llama.cpp) (0) | 2026.08.11 |
| "cmake .. make -j$(nproc)"의 의미? (0) | 2026.08.11 |