본문 바로가기

전체 글65

[Spring AI 🤖] Spring AI에서 프롬프트를 더욱 효과적으로 작성하는 방법 (feat. PromptTemplate) 안녕하세요 dev_writer입니다. 오늘은 저번에 말씀드린 대로 Spring AI에서 지원하는 PromptTemplate과 프롬프트의 근본적인 종류를 알려드리겠습니다. 프롬프트란이제 프롬프트 (Prompt)라는 단어는 일상생활에서 쉽게 접할 수 있는 말이 되었습니다. 위키백과에서는 프롬프트를 생성형 AI 모델로 해석되고 이해할 수 있는 명령, AI가 수행해야 하는 작업을 설명하는 자연어 텍스트라 정의하고 있습니다. 효과적으로 프롬프트를 적용할 수 있는 사례를 정리한 글도 참고하시면 좋을 듯합니다. Prompt 클래스기본적으로 Spring AI에서 프롬프트를 나타내는 Prompt 클래스의 인스턴스를 생성할 때, 생성자를 보면 UserMessage로 생성됨을 보실 수 있습니다. 그리고 그 이외에도 Mess.. 2024. 6. 23.
[세미나] LLM을 프로덕션에 적용하며 배운 것들 (당근 ML 밋업) 개요안녕하세요 dev_writer입니다. 오늘은 지난번 당근 ML 밋업에서 발표한 LLM을 프로덕션에 적용하며 배운 것들을 주제로 어떤 내용이 들어있는지를 정리해보고자 합니다. 제 글을 이전부터 봐오신 분들은 Spring AI에 대해서 제가 공부를 하고 있는 것을 아실 텐데요. Spring AI를 이용하여 학교에서 캡스톤 프로젝트를 한 뒤 동상을 얻는 등 좋은 성과가 있었습니다. 하지만 마주쳤던 문제점들이 있어서 이번 방학부터 진행할 부트캠프에서도 이 주제를 기반으로 다시 만들어보려고 하는데요, 접했던 문제 중 하나인 LLM이 원치 않는 데이터를 반환해 주는 문제를 어떻게 해결할 수 있을까에 대한 고민이 있어 위 세션을 들어보고 정리하였습니다. 당근에서의 LLM 사용 예당근에서는 LLM을 어떻게 사용하고.. 2024. 6. 17.
[회고 #6] 24년 5월 회고 너무 회고할 게 많았던 달이번 달은 이래도 되나? 싶을 정도로 좋은 이벤트가 많았던 달이었습니다. 하나씩 기록해 보겠습니다. Spring AI를 뜯어보다 - 이벤트 발생의 원인 (05.02)5월 2일에는 스프링에서 파이썬 진영에 있는 랭체인에 대항하기 위해 만든, Spring AI의 내부 원리를 분석한 글을 작성하였습니다. Spring AI를 쓰게 되면서 ChatGPT 등 AI의 API를 호출하기 위해 작성해야 했던 번거로운 HTTP 커넥션 코드를 상당 부분 제거할 수 있었기에 시작해 본 글이었습니다. (그러나 후술 하듯이, 이 과정이 다른 이벤트들을 연속적으로 부를 줄은 몰랐습니다.) Spring AI로 얻게 된 인생 첫 커피챗 (05.09)저는 이번 달부터 제가 공부하며 성장하는 과정을 단순히 블로그.. 2024. 5. 31.
[Spring AI 🤖] Spring AI 변경점 이슈 알아보기 (24.05.22 Issue) 이전 Spring AI에 대한 글을 작성한 후, 감사하게도 생각보다 많은 분이 글을 찾아주셨습니다. 그러던 도중, 갑자기 Spring AI 메인 README에 다음과 같은 내용이 올라왔습니다. Spring AI의 변경 사항 공지  핵심 먼저 말씀드리면, 아래와 같이 바뀌게 되었습니다.1️⃣ 새로운 ChatClient는 ChatModel 인스턴스를 취합니다. 이것은 RestClient, WebClient, JdbcClient 등과 같은 스프링 생태계의 클라이언트들과 유사한 방식으로 프롬프트를 실행할 수 있도록 fluent API 방식을 지원합니다.2️⃣ ChatClient, ImageClient 등 ...Client로 끝났던 파일들이 이제는 ...Model로 이름이 변경되었습니다.따라서 이전에는 ChatC.. 2024. 5. 26.
[세미나] 240516 실용주의 기술 블로그 글쓰기 devocean 후기 개요5월 16일에는 데보션에서 글또 커뮤니티를 운영 중이신 변성윤 (카일)님이 실용주의 기술 블로그 글쓰기를 주제로 강연을 해 주셔서, 청강 후 느낀 점을 공유드리고자 합니다.  성장에는 저항이 수반된다.개발자로 취업을 하는 과정에서 남들보다 경쟁력을 갖추기 위해, 지식 공유를 하기 위해, 또는 공부한 것을 잊지 않고자 기술 블로그를 쓰는 경향이 있습니다. 하지만 비단 기술 블로그 뿐 아니라, 일상적인 블로그 등 어떤 글을 창작하는 과정에 있어서 저항 (하기 싫어하는 마음)이 들 때가 있습니다. 그래서 연사님께서는 이 저항에 저항하는 것부터가 기술 블로그를 운영함에 있어서 필요한 첫 번째 과정이라고 이야기하셨습니다. 저희가 공부를 하기 위해 책상에 앉았을 때 침대에 눕고 싶은 마음을 이겨내는 것 또한 저.. 2024. 5. 20.
[Github] Github의 Issue와 PR (Pull Request) 알아보기 (PR 병합 후 이슈가 자동으로 닫히게 하려면?) 소개이번 시간에는 깃허브를 제대로 활용할 수 있는, 이슈 & PR 자동화 스크립트를 알려드리고자 합니다. 깃허브를 사용하고 계신 분들은 대부분 아실 개념들일 텐데요, PR이 merge 되면 관련 이슈가 자동으로 닫히도록 하는 것에 중점을 두겠습니다. Issue깃허브에서 이슈 (Issue)란, 모든 종류의 문제를 의미합니다. 예시로 Spring AI의 이슈를 보면 아래와 같이 여러 개가 있습니다. 깃허브의 공식 문서에서는 이슈를 다음과 같이 설명하고 있습니다.GitHub Issue란?우리 모두는 우리의 작업을 계획하고, 문제를 추적하고, 우리가 구축하는 것들을 논의할 수 있는 방법이 필요합니다. 이 보편적인 질문에 대한 우리의 대답은 깃허브 이슈이며, 그것은 모든 저장소에 내장되어 있습니다. 깃허브의 이슈.. 2024. 5. 18.