AI를 이용한 자동화 작업을 하면서 Slack 메세지를 통합해본 경험이 있는 분들이라면 한번쯤 이쁜 출력에 대해 고민해봤을 것이다. 구조화된 출력을 하게하고 직접 포맷팅하는 방법이 가장 마음에 들겠지만, 구조화된 출력을 위해 낭비되는 토큰들이 아깝거나, 사내공유 Slack 메세지처럼 딱히 정확한 출력을 원하지 않을때 내가 사용하는 방법이있다.
LLM에게는 마크다운으로 작성하라고하고, 그걸 Slack 메세지 포맷으로 바꾸는 방법이다.
처음부터 LLM에게 Slack 메세지 포맷으로 해달라고하면 메세지 포맷이 지켜지지 않기가 일쑤다. (특히, Google Gemini 2.0 Flash는 **를 엄청나게 쓴다.) 마크다운 문법은 모든 LLM이 거의 완벽하게 구사하기때문에 일관된 결과를 출력할 수 있다.
https://github.com/fla9ua/markdown_to_mrkdwn
python에서의 markdown_to_mrkdwn은 마크다운 문법을 슬랙의 mrkdwn 문법으로 쉽게 바꿀 수 있도록한다. 이 라이브러리 외에도 같은 기능을 하는 라이브러리가 많기때문에 골라서 사용하면된다.
이와 비슷하게 특정 서비스 스타일의 출력이 요구된다면, 장황한 프롬프트보다 차라리 Conveter를 만드는게 더 나은 선택이 될 수도있다.
'프로그래밍 > AI,ML' 카테고리의 다른 글
LLM Tool을 만들다 식겁한 이야기 (0) | 2025.06.21 |
---|---|
Agent를 고도화하면서 겪은 문제점들 (0) | 2025.04.09 |
LangGraph Agent에 장기기억(LTM)추가하기 (0) | 2025.04.03 |
반쪽짜리 Contextual Retrieval로 RAG 강화 해보기 (0) | 2025.03.26 |
사내 AI Agent 구축기 (1) | 2025.03.11 |