이 글에서는 실질적 팁이라기보다는 그냥 크게 overview만 다뤄서, LLM based agentic/agent를 개발할때 팁을 몇가지 더 추가하자면, 결국 LLM은 트포머(i.e probablistic based 추론, 현재 토큰/state 기반 다음 토큰을 문맥상/semantic하게 이해하고 다음 단어를 내뱉는게 아닌 확률적으로 아웃풋하는) 기반이라, 아무리 sys prompt를 잘해줘도, 자주 원하는 답변을 안주는 경우가 많아요(e.g JSON output으로 답변을 달라하는데, 가끔 } 를 빼먹는 다거나 등) 그래서 항상 regex기반 여러 fallback fn을 추가하는건 필수입니다.
그리고 structured output을 주는 sys prompt를 짜면 보통 non reasoning model을 사용하시고, context가 길면 길 수 록 할루시네이션이 자주 발생하여서 차라리 sys prompt를 여러개 만들어 체이닝 하는게 더 좋아요.
서비스를 개발하는경우 여러 에러가 발생할 수 있기에, 모듈화 , fault tolerant하게 서비스 구조를 설계하는게 핵심입니다(e.g supervisor agent를 async하게 하고 나머지 agent들은 sync), 특히나 unexpected output이 자주 발생하는 agentic , agent들은요.
그래서 처음부터 최대한 코드를 짤때 SRP를 지키며 declarative하게 짜는게 좋아 함수형으로 접근하는게 좋다고 얘기하고 싶습니다(=side effect가 없고, 플로우가 직관적)
그리고 LLM을 API를 통해서 사용 하는지 아니면 직접 모델 서빙을 할건지에 따라 다르겠지만, 만약 직접 SLM이나 LLM을 서빙할꺼면 백엔드를 호스팅 하는 같읔 서버에 Model serving을 하지말고, IO bound task랑 CPU bound tasks(i.e gpu required, mat mult같은거 필요한 task)를 따로 다른 서버에 두는게 fault tolerant하고 좋습니다(e.g runpod에 cpu bound task 호스팅).
이 다분합니다
물론, 좋은 리더라면 친절하게 듣고
정확하게 문제를 해결해줄겁니다
어느 책이나 글귀를 봐도
3번에 대한건 늘 저렇게 적혀 있지만
실제로는
왜 이런걸 물어보지
왜 이제서야 언급하지
이런것도 물어보나
3단 콤보에 질 낮은 파트너로 인식될 가능성
저도 현재 UseDesktop
https://youtu.be/aBkbsvMxP_A?si=uaugxKQEu4ZEz7jq
usedesktop.com
이 라고 Computer-use Agent를 만들고 있는데, 대부분 동의 합니다.
이 글에서는 실질적 팁이라기보다는 그냥 크게 overview만 다뤄서, LLM based agentic/agent를 개발할때 팁을 몇가지 더 추가하자면, 결국 LLM은 트포머(i.e probablistic based 추론, 현재 토큰/state 기반 다음 토큰을 문맥상/semantic하게 이해하고 다음 단어를 내뱉는게 아닌 확률적으로 아웃풋하는) 기반이라, 아무리 sys prompt를 잘해줘도, 자주 원하는 답변을 안주는 경우가 많아요(e.g JSON output으로 답변을 달라하는데, 가끔 } 를 빼먹는 다거나 등) 그래서 항상 regex기반 여러 fallback fn을 추가하는건 필수입니다.
그리고 structured output을 주는 sys prompt를 짜면 보통 non reasoning model을 사용하시고, context가 길면 길 수 록 할루시네이션이 자주 발생하여서 차라리 sys prompt를 여러개 만들어 체이닝 하는게 더 좋아요.
서비스를 개발하는경우 여러 에러가 발생할 수 있기에, 모듈화 , fault tolerant하게 서비스 구조를 설계하는게 핵심입니다(e.g supervisor agent를 async하게 하고 나머지 agent들은 sync), 특히나 unexpected output이 자주 발생하는 agentic , agent들은요.
그래서 처음부터 최대한 코드를 짤때 SRP를 지키며 declarative하게 짜는게 좋아 함수형으로 접근하는게 좋다고 얘기하고 싶습니다(=side effect가 없고, 플로우가 직관적)
그리고 LLM을 API를 통해서 사용 하는지 아니면 직접 모델 서빙을 할건지에 따라 다르겠지만, 만약 직접 SLM이나 LLM을 서빙할꺼면 백엔드를 호스팅 하는 같읔 서버에 Model serving을 하지말고, IO bound task랑 CPU bound tasks(i.e gpu required, mat mult같은거 필요한 task)를 따로 다른 서버에 두는게 fault tolerant하고 좋습니다(e.g runpod에 cpu bound task 호스팅).
이 외에 여러 개발 팁이 더 있는데 길이 너무 길어질까봐 여기까지만 적을게요
누군가에게 도움이 됐으면 좋겠네요
Private 원격 서버에 설치하는 식의 서비스는 어떨까요?
한국어 번역에 개떡 같은 자동 번역 더럽게 넣더니 더 진화했군요. 자동 번역도 못 막았는데 개떡 같은 AI 더럽게 넣는 것도 다 맛보죠!
cgi는 그렇다 쳐도 jsp에 대한 반응이 놀랍네요 ㅋㅋ
jsp가 벌써 그정도로의 고대 유물이 된걸까요.
AI 기능, 특히 백그라운드에서 대기하다가 도와주겠다는 서비스들이 정말 싫어요.
원격에서 실행된다면 내 정보가 제공되는 문제, 로컬에서 실행된다면 내 컴퓨터의 자원(CPU, 메모리, 배터리, ...)을 소모하는 문제가 있으니까요.
좋은 레퍼런스가 될 거 같네요
따뜻한 관심 감사합니다!
러시아 출신 개발자로 얀덱스에서 Riot 갔다가 지금은 JPMorganChase로 이직했네요
글쓴 분이 기대하는 답변은 아니겠지만, 7플러스를 아직 실사용 중입니다.
혼자서 '스마트폰 10년 쓰기' 챌린지 같은 걸 하고 있는데, 9년 정도 되니 슬슬 한계가 오고 있네요.
어떻게든 햇수로 10년 채우고 내년 초 쯤 7+에서 17로 넘어가려고 합니다.
ㅋㅋㅋㅋㅋㅋㅋ너무 웃겨요
이름만 바뀌는 느낌이 강하내요.
https://x.com/soham_btw/status/1940952786491027886
트윗 보니 가관이네요..
이 말은 이 글을 보시는 다른 분들에게 하려는 의도였습니다.
잘 쓰고 계신 분들에게는 제가 뭐라고 할 수 없죠
그나마 네이버 같이 정보를 갖고 있는 곳들이 만든다면 좀 낫지 않을까 싶네요
공개적인 블로그는 외국 기업도 크롤링으로 갖고 있을지 모르지만, 카페에 있는 정보들은 네이버 독점일 거 같아요.
없습니다. 한국 IT 기업들이 최근에 공개하는 LLM들도 다른 베이스 모델들 추가 학습한 상황이니까요
API 래퍼에 수수료 낭비하지 마시고 원래 모델들 이용하셨으면 좋겠네요.
n100이랑 AMD 4825U 쓰는 중인데 만족스러워요
우리나라가 GPT 이용률이 매우 높은 것으로 알고 있는데요
이 리소스가 우리 국내 서비스에 사용되었다면
좋았을텐데라는 생각이드네요
Perplexity도 독자 모델이 없는 AI wrapper 서비스 아닌가요?