LLM의 편향성, 아첨 등 행동을 자동 평가

by DD
5개월 전
조회수 9

Bloom은 LLM(대규모 언어 모델)의 특정 행동을 평가하는 오픈 소스 도구임.

Sycophancy(아첨), 정치적 편향 등 원하는 행동을 정의하고 평가 시나리오를 생성.

LiteLLM을 통해 다양한 LLM 제공업체(OpenAI, Anthropic 등)를 지원하며, Weights & Biases 통합.

자동화된 평가 파이프라인 구조

Bloom은 이해, 아이데이션, 롤아웃, 판단의 4단계 파이프라인으로 구성되어 LLM의 행동을 평가한다. 이해 단계는 목표 행동과 예시 대화를 분석하고, 아이데이션 단계는 다양한 평가 시나리오를 생성한다. 롤아웃 단계는 생성된 시나리오를 타겟 모델에 적용하고, 판단 단계는 롤아웃 결과를 평가한다. 따라서, 각 단계는 이전 단계의 결과에 의존하며, Weights & Biases를 통해 대규모 실험을 지원한다.

LiteLLM을 활용한 모델 유연성

Bloom은 LiteLLM을 사용하여 다양한 LLM 제공업체(OpenAI, Anthropic, OpenRouter, Amazon Bedrock)를 지원한다. LiteLLM은 모델 API 호출을 통합하여, 새로운 모델을 쉽게 추가할 수 있도록 한다. 구체적으로, .env 파일에 API 키를 설정하고, globals.py 파일에 모델 ID를 추가하여 모델을 확장할 수 있다. 따라서, 다양한 모델을 비교하고 평가하는 데 유연성을 제공한다.

확장된 사고(Extended Thinking) 지원

Bloom은 Claude(Sonnet 4+, Opus 4+) 및 OpenAI o1/o3 모델에 대해 확장된 사고를 지원한다. reasoning_effort 매개변수를 사용하여 사고 노력을 조절할 수 있으며, temperature는 1.0으로 설정해야 한다. max_tokens는 사고 예산보다 커야 하며, 지능형 배치(Intelligent Ideation Batching)를 통해 API 호출 효율성을 높인다. 따라서, 모델의 복잡한 행동을 평가하는 데 필요한 유연성을 제공한다.

safety-research / bloom