
Builder() 패턴을 활용해서 객체를 생성한다.
User user = User.builder()
//과정~
.id(1L)
.name("Rabbit")
.email("rabbit@gmail.com")
//~과정
.build()'
이렇게 했을때 좋은 점은 Builder 패턴은 객체 생성 과정과 결과를 분리하여 복잡한 객체를 단계적으로 생성할 수 있게 한다.
장점:
생성자 오버로딩 없이 다양한 조합의 객체 생성 가능
가독성 향상 (필드명을 명시하면서 설정 가능)
불변 객체(immutable object) 생성에 유리
모델 = 데이터로부터 학습된 패턴(규칙)의 집합
인공지능은 규칙이 필요하다. 전통적인 규칙 기반 시스템은 사람이 직접 규칙을 정의한다. 사람은 모든 경우의 수를 생각할 수 없기 때문에 이 시스템은 예외 상황에 취약해지고 확장성이 낮아질 수 밖에 없다.
그렇기 때문에 규칙을 데이터 분석에 의해 패턴을 학습함으로서 예외적인 상황이 들어와도 확률적으로 대응할 수 있다.
기반 아키텍처: Transformer
→ 인코더(Encoder) + 디코더(Decoder) 구조
핵심 개념: Attention (문맥을 고려한 단어 간 관계 학습)
학습 과정:
토큰화(Tokenization): 문장을 최소 의미 단위(토큰)로 분해
벡터화(Vectorization): 각 토큰을 수치로 변환하여 모델이 이해 가능한 형태로
Transformer 학습: Attention 메커니즘으로 문맥적 관계 학습
사용 시 주의점:
프롬프트(prompt)를 명확하고 구체적으로 작성해야 원하는 결과를 얻을 수 있다.

Restful API로 되어 있음
엔드포인트를 정확하게 자원의 경로를 알 수 있어야 한다,

✅ 예시
POST https://api.openai.com/v1/chat/completions 처럼 한 줄에 내용이 잘 들어가 있어야 한다.