LLM활용 방향성

한라산·2024년 10월 31일
0
post-thumbnail

동료에게 LLM을 어떻게 활용하면 좋을지에 대한 질문을 받고
대략적인 생각의 방향을 제시할 만한 간단한 예제 두 가지를 생각해보았다.

이해를 돕기위해 모두 한국어로 작성

오토크루즈컨트롤

"공감이 잘 갈만한 일상생활에서의 유용한 기능을 대신한다면 어떤게 있을까?"를 생각함

만약 자동차의 오토크루즈컨트롤 기능을 LLM으로 따라해본다면?

Question

너는 자동차의 오토크루즈컨트롤 시스템이야 
내가 '현재 시속','상황'을 주면 너는 상황에 맞게 다음 데이터를 알려줘 

브레이크 - 감속해야 하는 경우 어느 정도로 브레이크를 밟아야하는지 (0~10) 
엑셀 - 속도를 올려야 하는 경우 어느 정도로 엑셀을 밟아야하는지(0~10) 
적정속도 - 현재 상황에 맞는 적정 속도가 몇 km 인지 

현재시속: 120km 
상황: 전방 100m앞 차량 내 차선으로 차선변경 


응답 예시(JSON): 
{
 "적정속도" : 50, 
"브레이크" : 0,
 "엑셀": 10 
}

매번 메세지에 프롬프트를 넣어도 되겠지만 '현재시속', '상황'을 제외한 내용을 시스템 프롬포트에 추가하면 모양이 더 예쁨

Answer

{
  "적정속도": 80,
  "브레이크": 4,
  "엑셀": 0
}

AI에이전트의 동작

대략적으로 AI에이전트의 동작 원리는 다음과 같다고 생각한다.

Question

다음 질문에 필요한 도구와 그의 행동 입력을 구하시오. 
'관찰'에 정보가 있다면 해당 내용을 참고하여 도구를 제외
다음 도구에 액세스할 수 있습니다:
[뉴스검색, 날씨검색, 지도검색, 주식검색]

행동 입력 - 행동에 대한 입력
관찰 - 도구를 사용한 결과

질문: 오늘 콜롬비아 날씨는 어때? 날씨에 따른 스타벅스 주식의 주가 변동도 알고싶어
관찰: []

응답 예시(JSON):
[
    {
        "도구": "도구이름",
        "행동 입력": "파라미터"
    }
]

Answer

[
    {
        "도구": "날씨검색",
        "행동 입력": "콜롬비아의 오늘 날씨"
    },
    {
        "도구": "주식검색",
        "행동 입력": "스타벅스 주식의 현재 가격과 변동 상황"
    }
]

특정 질문과 도구목록을 LLM에게 제공하여
답변에 도움이 될 도구 목록을 추론한 뒤
해당 도구를 실행하여 관찰에 그 결과를 추가하여
최종질의 진행

단계별로 진행한다면

Question

다음 질문에 필요한 도구와 그의 행동 입력을 구하시오. 
'관찰'에 정보가 있다면 해당 내용을 참고하여 도구를 제외
다음 도구에 액세스할 수 있습니다:
[뉴스검색, 날씨검색, 지도검색, 주식검색]

행동 입력 - 행동에 대한 입력
관찰 - 도구를 사용한 결과

질문: 오늘 콜롬비아 날씨는 어때? 날씨에 따른 스타벅스 주식의 주가 변동도 알고싶어
관찰: [현재 콜롬비아의 날씨는 아주 화창합니다.]

응답 예시(JSON):
[
    {
        "도구": "도구이름",
        "행동 입력": "파라미터"
    }
]

Answer

[
    {
        "도구": "주식검색",
        "행동 입력": "스타벅스 주식의 오늘 주가"
    }
]

와 같이 단계별 진행도 가능할 것 같다.

결론

사실 유튜브 영상 하나 보는게 더 이해하기 쉬울것이다.
그냥 질문을 받고 생각해 봤던 내용을 적어 본 것이고 아주아주 약식이다.

LLM을 활용하려면 일단 LLM이 잘하는게 무엇인지에 대한 파악과
자신이 원하는 결과에 도달하기 위한 과정을 생각하는게 중요한 것 같다.

어쨌든 LLM에 질문시 최종적으로는 답변하기 위한 보조 정보와 같이 프롬포트에 담아
결과를 도출한다는것만 알고 그 외는 응용의 영역이라고 생각한다.

만약 아직 잘 모르겠다면!
당장 Langchain 문서로 가보는걸 추천한다!
아주 재미있기 때문이다!

profile
산입니다.

0개의 댓글