# 벡터 데이터베이스 면접 가이드 및 기술 분석
이 글은 벡터 데이터베이스에 대한 면접 경험 공유 및 기술 분석입니다. 벡터 데이터베이스의 핵심 개념, 기술 원리, 선택 제안 및 적용 시나리오를 체계적으로 설명합니다.
## 1. 핵심 정의
- **정의**: 벡터 데이터베이스는 **고차원 벡터**를 저장하고 검색하는 데 특화된 데이터베이스입니다. 핵심 기능은 **근사 최근접 이웃 검색**으로, 대규모 벡터 집합에서 쿼리 벡터와 가장 유사한 몇 개의 결과를 빠르게 찾을 수 있습니다.
- **일반 데이터베이스와의 본질적 차이**:
…
# Function Calling 기술 요약
## 1. 정의
Function Calling은 개발자가 JSON 스키마를 통해 대규모 언어 모델(LLM)에 사용 가능한 외부 도구(예: API)를 설명할 수 있게 하는 메커니즘입니다. 모델이 사용자 질문에 답변하기 위해 도구 호출이 필요하다고 판단하면, 구조화된 `tool_calls` JSON 데이터를 출력하여 호출할 함수 이름과 매개변수를 지정합니다. 호스트 프로그램이 이 호출을 구문 분석하고 실행한 후 결과를 모델에 반환하면, 모델이 최종 답변을 생성합니다.
## 2. …
# AI 면접 질문 2: 대규모 언어 모델(LLM)의 도구 호출 신뢰성을 보장하는 방법
대규모 언어 모델(LLM)이 도구를 호출할 때 신뢰할 수 있고 통제 가능하게 작동하도록 보장하는 방법은 단순히 프롬프트에 의존하여 모델을 "설득"하는 것 이상의 접근이 필요합니다. 체계적으로 다단계 제약 프레임워크를 제공해야 합니다.
날씨 조회 예시에서 모델이 도구 호출 시 흔히 저지르는 세 가지 "허위" 행동:
1. **도구를 호출하지 않고 직접 가상의 답변을 생성**
2. **도구 호출 시 형식이 잘못된 매개변수 전달** (…
# Agent 도구 호출과 일반 함수 호출의 차이 요약
본 문서는 Agent 도구 호출과 일반 함수 호출의 핵심적인 차이점에 대해 논의하고, Agent 도구 호출의 메커니즘, 가치, 일반적인 실패 유형 및 대응 전략을 상세히 설명합니다.
## 핵심 차이점 요약
일반 함수 호출은 **컴파일 시점에 결정되고, 동기적이며, 결정론적(deterministic)**입니다. 프로그래머가 코드 내에서 호출 시점, 매개변수, 오류 처리 로직을 명시적으로 지정합니다. 반면, Agent 도구 호출은 **런타임에 결정되고, 비동기적이며…