Category List119 Agent 실험 1. 프롬포트 설계 백문이 불여일견. agent를 알려면 직접 구현해봐야겠다고 생각했다. 작은 에이전트지만, 구현하면서 느꼈던 점을 정리해보려고한다. agent의 똑똑함은 프롬포트와 직결된다. 에이전트 구현은 코드 구현과 달랐다. 단순히 명령어를 나열하는 방식의 '이걸 해줘' 가 아니라, 모델이 어떤 관점으로 생각을 시작하고 어떤 기준으로 판단할 것인지, 어떤 방식으로 답을 완성해나가야하는지에 대한 룰을 설계해야했다. 말 그대로 design 에 가까웠다. 왜 이런 생각을 하게 되었을까. 입력한 키워드를 통한 책 추천 에이전트를 작게 만들어보았다. 프롬포트는 다음과 같이 작성해두었다. 간단히 에이전트의 역할, 규칙을 가이드했다. Before 프롬포트 더보기prompt = f"""너는 상황에 맞춰 글의 톤과 스타일을 조정하는 .. 2025. 4. 27. Prompt With Engineering AI 서비스를 만들 때, 개발자는 어디까지 개입할 수 있을까? AI 는 어느 부분에서 부족할까? 소설을 추천하여 매일 메일링을 해주는 서비스가 있다고 치자. 사용자 연령에 따라 소설 추천이 달라져야 할 수도, 번역판이 존재하지 않는다면 원작을 추천해야 할 수도 있다. AI 가 적재적소의 답변을 하도록 가이드를 줘야한다. 그게 프롬포트 Prompt 다.프롬포트는 LLM 을 사용할 때 입력으로 주어지는 명령이나 질문을 뜻한다. 프롬포트는 어떻게 가져가냐에 따라 응답 품질이 아예 달라지기 때문에 매우 매우 중요하다. 지금까지 살펴본 DL 의 주요 개념과 프롬포트는 어떻게 연결되는지 궁리해보았다. 연결이 조금 더 복잡해졌지만, 연두색만 집중해서 살펴보면된다. LLM 은 DL 의 Transformer 아키텍.. 2025. 3. 21. ChainOfThought "AI" ChainOfThought 는 LLM 프롬포트 기법 중 하나며, ‘생각의 사슬' 또는 '일련의 생각' 으로 번역할 수 있다. AI 생태계를 양파로 표현해보았다. AI 는 모든 개념을 아우를 수 있는 상위 개념이다. 인간의 지능을 인공적으로 만들겠다는 것. 이를 구현하는 방법 중 하나로 ML(머신러닝)이 있으며, ML 의 확장된 형태가 DL(딥러닝)이다. ML 은 데이터에서 일련의 패턴을 학습한다. DL 은 여기서 한 단계 더 나아간다. 이미지나 영상같은 비정형 데이터까지 학습한다. 이건 더 복잡해진 케이스를 커버한다는 것을 넘어선다. DL은 인간의 신경망에서 아이디어를 얻어 설계된 Deep Neural Network(DNN)를 기반으로 한다. 덕분에 원본 데이터에서 중요 특징(feature)을 자동으.. 2025. 3. 20. <AI, 네가 뭔데 날 울려> 소개 본격 AI 시대 도래에 앞서 많은 개발자들이 일자리를 위협받고 있습니다.본 시리즈는 그들을 위해 바칩니다. 우리는 어떻게 될까요? 시리즈 목차 0. ChainOfThought "AI"1. Prompt With Engineering2. Agent 실험 1 - 프롬포트 설계3. 정말.. 내 일자리는 위험할까? 2025. 3. 17. This is water 손석구를 추앙하는 편이기도 하지만 사실 오래 전부터 내가 추앙해온 사람은 따로 있었으니... 그는 바로 DFW. 5년 전, 을 읽고 그의 모든 책을 다 읽어내기로 결심했었다. 국내 출간물은 다 읽었다고 생각했는데.. 그새 번역 신간이 몇 권 더 나왔다. 도 그 중 하나였다. DFW 는 2005년 대학교 졸업 연사로 초청받았다. DFW 가 졸업 연사를? 교훈을 설파하는 일에 알러지 반응을 일으킬 것 같은 사람이어서 의외였다. 웃긴 건 그 연설이 그의 대표작 중 하나다. 연설 스트립트가 번역되어 국내에도 출판되었다. 그게 다. 너무 진부하고 상투적이어서 흘려듣게 되는 말, 그 말에 담긴 깊이를 이해하면 클리셰는 전복된다. 신선한 게 된다. 그의 연설은 "진정한 교육은 생각하는 법을 가르친다." 라는.. 2025. 2. 22. java.util.concurrent 안에는 뭐가 들었을까 이전 블로그 포스팅에서 동시성 제어의 원초적 접근법으로 synchronized 가 유효한지 살펴보았습니다. 이 후, java.util.concurrent 패키지에서 synchronized 의 단점을 보완할 수 있는 방법을 찾게되었습니다.synchronized 에 치명적 단점은 두 가지가 있습니다. synchronized 키워드로 이루어진 영역에 스레드가 접근하려면 모니터 락을 획득해야합니다. 스레드는 모니터 락을 획득할 때까지 무한 대기합니다. 이때 해당 스레드의 상태는 BLOCKED 입니다. BLOCKED 상태는 interrupted() 로도 다시 RUNNABLE 상태로 전이시킬 수 없습니다. 락을 얻기 전까지는 계속 BLOCKED 상태로 머무릅니다. 그래서 '무한' 대기 상태에 빠지게됩니다. 심지어 .. 2025. 1. 4. 이전 1 2 3 4 ··· 20 다음