반응형
블로그 이미지
개발자로서 현장에서 일하면서 새로 접하는 기술들이나 알게된 정보 등을 정리하기 위한 블로그입니다. 운 좋게 미국에서 큰 회사들의 프로젝트에서 컬설턴트로 일하고 있어서 새로운 기술들을 접할 기회가 많이 있습니다. 미국의 IT 프로젝트에서 사용되는 툴들에 대해 많은 분들과 정보를 공유하고 싶습니다.
솔웅

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

글 보관함

카테고리


반응형

지난 시간에  LangGraph 의 Tool을 사용할 때 발생한 Chatbot 기능의 에러가 있었습니다.
제가 과제로 냈었는데요.
오늘 그 에러를 해결하는 과정을 단계별로 보여드릴께요.

ChatBot 기능에서 질문과 대답 사이에 Tool 을 사용했던 기록들이 나오는게 문제 였는데요.
에러가 난 부분으로 가서 log를 찍어보고 필요 없는데 print 되는 부분들의 패턴을 파악한 후 Session message에 append 하는 것을 막아 버리면 됩니다.

이 과정을 직접 확인해 보세요.

 

https://youtu.be/jPK7i7YVg68?si=QIUGOGFbwk2qqSxo

 

 

반응형


반응형
OpenAI Assistants API 의 Function Calling에 대해 배웁니다.
직접 코딩해서 Tool을 만들어야 하고 Schema 도 제작해야 합니다.
쉽지 않은 작업입니다.
Function Calling을 배울 수 있는 좋은 자료를 찾았습니다.
자세하고 소스코드 설명도 하고 제가 수정한 소스코드도 공개 합니다.
OpenAI Assistants API의 Function Calling을 배우는데 도움이 되길 바랍니다.
Assistants API의 Function Calling을 사용하면 ChatGPT 를 비지니스에 활용할 수 있을 정도의 정확도를 제공 하는 성능으로 업그레이드 할 수 있습니다.
현재 AI Application 개발의 트렌드는 Multi Agent , Agentic Workflow로 어플리케이션에 Agent 들을 두고 각 에이전트 들은 다수의 툴들을 가지고 작업하는 바익으로 발전하고 있습니다.
이는 사용자의 질문에 한번의 답을 하는 것이 아니라 그 질문을 마치 하나의 미션으로 두고 여러 Agent가 다양한 툴을 사용해 그 미션을 달성해 사용자의 요구조건을 더 짧은 시간에 더 충실히 채워주는 방식으로 변화하고 있습니다.
OpenAI 의 Assistants API는 이런 Agents 개념을 도입한 서비스 입니다.
지금은 베타버전이지만 앞으로 ChatGPT라는 기본 AI 모델의 성능향상도 중요하지만 점차 이런 Agent 활용 방법의 중요성이 대두되고 있기 때문에 이 Assistants API 도 많이 보강 될 것이라 믿습니다.
미래 기술을 초기부터 따라 잡아서 배우면 Expert이 될 수 있습니다.
이해하고 구현하기 어려운 Function Calling 을 쉽게 배울 수 있는 소스코드를 구해서 심층 분석했습니다.
많은 도움이 되길 바랍니다.

 

https://youtu.be/QEf5FR0DiHk?si=TECvJ_RslHzm9fVl

 

반응형


반응형

오늘은 챗지피티에게 코딩 시키기 두번째 시간입니다.

실무에서 AI 를 Scripting 에 이용하면서 느낀 점들 그리고 미래를 어떻게 준비 해야 되겠다라고 생각한 부분들도 정리해서 올렸습니다.

AI 시대를 준비하시는 여러분들에게 조금이라도 도움이 되길 바랍니다.

아래는 AI 에게 Scripting을 시켜서 앱을 개발하면서 느낀 점들을 정리 한 내용들 입니다.

 

  • AI 에게 코딩을 시켜서 앱을 개발하고 느낀 점들

- 아직 AI는 한번에 에러 없이 완벽한 코딩을 하지 못한다. 

  : 인간이 질문한 내용에만 focus 를 두어서 코딩을 하기 때문에 전체 소스코드가 에러 없이 실행되지 않을 때가 많다.

- 하지만 AI는 해당 에러의 원인을 파악하고 수정하는 작업은 인간보다 훨씬 빠르게 진행한다.

: Scripting에 천재적이지만 아직 말귀를 잘 못 알아 듣고 실무 경험이 부족한 사회 초년생을 조수로 둔 느낌

- AI에게 코딩을 시킬 때 백지상태에서 시작하는 것 보다 간단한 예제 코드를 제공하면서 시작하면 훨씬 진행이 빠르다.

- 아직 인간의 역할이 많이 필요 하다

  : 인간은 뚜렷한 최종 목표 앱에 대한 그림(청사진)이 있어야 한다.

  : Scripting 천재인 사회 초년생을 잘 Lead 하기 위한 앱 개발의 기본 지식은 있어야 한다. 

  : 더 좋은 대답을 얻으려면 더 좋은 질문을 해야 한다. (Requirement를 구체적이고 빠뜨림 없이 AI에게 제공해야 일의 진행을 더 빨리 할 수 있다.)

  : Production에 Publish 하기 전 Testing 과정을 강화해야 함 

  : 필요한 경우 사용할 Languages, Tools, Modules 그리고 특정 API 등 아주 자세한 내용까지 제공해야 하는 경우도 있음

- 현재 AI의 코딩 실력은 기존의 개발자의 개발 시간을 크게 줄여 주는 역할은 충분히 할 수 있음

 

https://youtu.be/48k_H1cwsfM?si=TEKnvy0u01d2BRfZ 

 

 

 

 

반응형


반응형
오늘은 ChatGPT에게 코딩을 시켜서 AI RAG App을 하나 만드는 과정을 보여 드립니다.
제가 실제 실무에서 작업했던 내용을 거의 재연 했습니다.
챗지피티의 코딩 실력은 정말 빠르고 훌륭했습니다.
그런데 아직 인간의 개입이 많이 필요했습니다.
개발자인 저는 결국 씩 한번 웃을 수 밖에 없었는데요.
챗지피티에게 코딩을 시키는 과정을 보시고 또 직접 시도해 보시고 AI 가 Cover 하는 부분은 어느 부분이고 사람이 필요한 부분은 또 어떤 일들인지 한번 같이 생각해 보시죠.
 
 

https://youtu.be/HThDRdksrL8?si=ScJbsbJNO4y35zsZ

 

 

반응형


반응형
이번 시간에는 지난번 LangChain의 RetrievalChain 을 배울 때 사용했던 소스코드를 그대로 사용할 겁니다.
그 소스코드에 Streamlit 의 Session 관련 기능들을 사용해서 ChatBot 기능을 구현해 봅니다.
주요 스트림릿 툴들은 st.session_state(), st.session_message 그리고 st.session_input 등입니다.
이 각 툴들은 어떤 역할을 하고 또 어떻게 사용해야 되는지 알아봅니다.
 
지난 시간에 배웠던 랭체인의 create_history_aware_retriever 도 챗봇 기능을 구현하기 위해 지원되는 기능입니다.
 
둘 다 사용자의 질문과 인공지능의 대답을 저장해 두고 다음 질문 할 때 그 history와 함께 새로운 질문을 인공지능에 보내서 인공지능이 그동안의 질문과 답변을 참고해서 질문의 의미를 좀 더 정확하게 파악할 수 있게 해 좀 더 해당 질문에 정확한 답변을 보낼 수 있도록 해 주는 겁니다.
그리고 그 질문과 답변 history를 브라우저에 표시할 수도 있어서 사용자도 질문과 답변 히스토리를 볼 수 있도록 해 줍니다.
 
랭체인은 스크립트 내 변수에 해당 히스토리를 저장해서 사용하고 스트림릿은 세션단위에서 그 히스토리를 저장해서 사용합니다.
 
그렇기 때문에 둘 다 새로운 브라우저에서 대화를 할 때는 이전 히스토리를 사용할 수 없습니다.
 
이렇게 해당 정보가 휘발되지 않고 다른 브라우저에서 볼 수도 있고 컴퓨터를 껐다가 켜도 그 정보를 사용할 수 있도록 려면 스크립트 내 변수나 브라우저 세션 등 임시 저장공간에 저장을 하지않고 파일이나 DB 등 제 3의 장소에 저장해서 사용해야 합니다.
 
오늘은 스트림릿에서 제공하는 st.session_state 를 사용해서 간단하게 챗봇을 구현하는 기술을 배워 봅니다.
 

 

 

 

유투브 비디오 썸네일로 사용하려고 AI에게 이미지를 그려 달라고 했는데 이렇게 그려 주더라구요.

예쁜 여자 프로그래머를 그려 달라고 했는데 너무너무 예쁘게 그려 주네요.

 

이 그림은 마이크로소프트의 코파일럿 (Copilot) 이 그려 준 겁니다.

실제 썸네일에는  GPT 4o 가 그려 준 아래 이미지를 사용했는데요. 

 

코파일럿과  GPT 4o 각각 자신만의 화풍이 있는 것 같아요.

 

다음 비디오로는  GPT 4o 에게 코딩 시키기를 해 볼 계획입니다.

얼마전 회사에서 필요로 하는 샘플  RAG 웹앱을 만들어야 했는데요. 

이 때 오늘 설명한  기능에서 사용한 소스코드를 base 로 해서 샘플 RAG 웹 앱을 만들었는데요.

저 혼자 하면 며칠은 해야 됐을 것 같은 일을  챗지피티랑 같이 하니까 단 몇시간만에 만들 수 있더라구요.

 

챗지피티가 초보 개발자 한두명 역할은 충분히 하는 것 같습니다.

 

챗지피티에게 코딩을 시키면서 여러가지 생각들이 들더라구요.

 

그 능력에 놀란 부분도 있었고 또 인공지능에게 코딩을 시키기 위해 인간이 가지고 있어야 할 능력이 무엇인지도 생각 해 볼 기회가 있었구요.

또 개발자의 미래 그리고 회사의 management 의 변화 뭐 이런 것들도 생각 해 봤구요.

 

하여간 다음 시간에는 챗지피티에게 코딩을 시켜서 웹 어플리케이션 하나 완성해 보는 과정을 다룰 거구요 또 실제 업무 현장에서 챗지피티와 함께 코딩을 하면서 느낀 점들을 같이 나누고자 합니다.

 

회사에서 주 업무는 클라우드 를 사용한 서버 관리 그 중에 요즘엔 쿠버네티스를 사용한 서버 관리 부분을 하고 있는데요.

 

AI 웹 앱도 컨테이너 기반으로 쿠버네티스를 이용한 서버 환경에서 관리하는 법도 제 블로그와 유투브 채널에 정리해서 올릴 계획입니다.

 

계속 관심 가져 주시고 구독과 좋아요를 눌러 주시면 미국 현장에서 배우는  IT 기술을 나누는 일에 큰 힘이 될 겁니다.

많은 협조 부탁드립니다.

 

https://www.youtube.com/@catchupai

 

Catch Up AI

AI Web Developer 를 준비하면서 공부한 내용을 공유하는 채널 입니다. AI Engineer 가 되고 싶거나 AI 를 실무에서 응용하길 원하는 분들에게 정보를 제공하는 내용으로 채워질 예정입니다. Catch Up AI 는

www.youtube.com

 

 

반응형

'Catchup AI' 카테고리의 다른 글

AI Agent - 고급 AI Web App을 개발하려면 반드시 알아야 합니다. 오늘 그 기초부터 시작하세요.  (0) 2024.08.03
요즘 AI 앱 개발 트렌드 입니다. 이제부터 좀 더 복잡한 AI 앱 개발 기술로 들어갑니다. 우선 Agent란 무엇인지 이해하시면 많은 도움이 됩니다. (IBM 자료)  (0) 2024.07.28
챗지피티에게 코딩 시키기 2 - 개발자로서 이런것들을 준비 하세요. 다 길이 있네요. ;)  (1) 2024.07.24
챗지피티에게 코딩 시키기 1 - 앱 하나 뚝딱 이더라구요. 근데 저는 씩 웃었습니다. (쿠키 영상: 아코디언 연주)  (1) 2024.07.20
2024 AWS Summit 에서 발표된 AWS App Studio - Prompt 만으로 어플리케이션을 만들 수 있습니다  (4) 2024.07.15
create_history_aware_retriever : RAG 에 chat history 관리 기능을 추가해 ChatBot을 가능하게 해 주는 Retriever입니다.  (0) 2024.07.02
LangChain Quick Start - Chunk : 실력있는 개발자는 성능, 속도, 비용까지 고려 합니다. RAG에서의 데이터 처리  (0) 2024.06.24
[Tech Snippets] 랭체인! 너 블록체인과 무슨 관계야? 조사하면 다 나온다.  (0) 2024.06.21
BIGHUG - AI 들도 각각 개성이 있네. 사람처럼. AI 개성 파악은 더 나은 협업을 위한 열쇠예요. 사람처럼.  (1) 2024.06.04
RAG 직접 코딩으로 구현하면 확실하게 배웁니다. 제 소스코드 가져가서 맘껏 활용하세요.  (1) 2024.05.31


반응형

LangChain - RAG - create_history_aware_retriever

 

지난 시간까지 RAG의 기본 기능을 배웠습니다.

AI Web Application에서 기본적으로 제공되어야 하는 것은 ChatBot 기능입니다.

 

이를 위해서는 Chat History를 관리해주는 기능이 추가 되어야 합니다.

AI는 이전 대화 내용을 기억하지 못하기 때문입니다.

 

이런 AI의 부족한 부분을 채워 주는 LangChain의 Retriever 가 바로 create_history_aware_retriever 입니다.

 

AI 하고 말이 통하게 만들어 주는 바로 그 Retriever.

 

오늘은 create_history_awere_retriever에 대해 배웁니다.

 

https://youtu.be/EQ6c9309T8c

 

오늘 매울 AI Web Application link는 아래에 있습니다. https://catchuplangchain.streamlit.app/LC_Quickstart_03_ConversationRetrievalChain

 

 

 

반응형

'Catchup AI' 카테고리의 다른 글

요즘 AI 앱 개발 트렌드 입니다. 이제부터 좀 더 복잡한 AI 앱 개발 기술로 들어갑니다. 우선 Agent란 무엇인지 이해하시면 많은 도움이 됩니다. (IBM 자료)  (0) 2024.07.28
챗지피티에게 코딩 시키기 2 - 개발자로서 이런것들을 준비 하세요. 다 길이 있네요. ;)  (1) 2024.07.24
챗지피티에게 코딩 시키기 1 - 앱 하나 뚝딱 이더라구요. 근데 저는 씩 웃었습니다. (쿠키 영상: 아코디언 연주)  (1) 2024.07.20
2024 AWS Summit 에서 발표된 AWS App Studio - Prompt 만으로 어플리케이션을 만들 수 있습니다  (4) 2024.07.15
LangChain + Streamlit = RAG + ChatBot : Streamlit 의 session_state를 사용해 RAG에 대화 기능을 구현합니다  (0) 2024.07.08
LangChain Quick Start - Chunk : 실력있는 개발자는 성능, 속도, 비용까지 고려 합니다. RAG에서의 데이터 처리  (0) 2024.06.24
[Tech Snippets] 랭체인! 너 블록체인과 무슨 관계야? 조사하면 다 나온다.  (0) 2024.06.21
BIGHUG - AI 들도 각각 개성이 있네. 사람처럼. AI 개성 파악은 더 나은 협업을 위한 열쇠예요. 사람처럼.  (1) 2024.06.04
RAG 직접 코딩으로 구현하면 확실하게 배웁니다. 제 소스코드 가져가서 맘껏 활용하세요.  (1) 2024.05.31
LangChain Quick Start - Retrieval Chain 요즘 AI Web App 개발에서 가장 중요한 방법론 중 하나인 RAG를 배웁니다. 단디 배웁시다  (0) 2024.05.29


반응형

 

 

이번 비디오의 내용은 지난 비디오의 보충수업입니다.

 

지난 강좌에서 LangChain에서 Retrieval 함수를 사용해서 RAG의 가장 기본적인 기능을 구현 했습니다.

그것을 통해서 데이터 수집 - 데이터 split - 임베딩 처리 - 벡터스토어에 저장 - Retrieval - LLM 과 communication 이런 RAG의 기본적인 프로세스를 이해 했습니다.

 

이번에는 그 기능에 더해 데이터를 vector store에 저장하고 그 저장한 데이터를 Retrieval 하는 과정에서 어떻게 데이터를 가공하는지를 자세하게 알아 봅니다.

 

데이터를 어떻게 가공하느냐에 따라 성능과 속도 그리고 비용에까지 영향을 미칠 수 있습니다.

장문의 입력 데이터를 임베딩 처리 하기 전에 Chunk로 split 할 때 개발자는 어떤 것을 어떻게 control 해서 최적화를 시킬 수 있는지…

 

그리고 Vector store 에서 Retrieval 할 때 어떤 옵션들이 있고 그것을 어떻게 사용하는지를 설명했습니다.

실력있는 개발자는 단순히 기능만 구현하는 것 이외에 성능, 속도, 비용까지 고려 합니다.

한번 배울 때 확실하게 배워서 진짜 실력있는 개발자가 됩시다.

 

https://youtu.be/qC1GGZDyB14

 

 

 

반응형


반응형
BIGHUG에서 주최한 시애틀 권역 한인 소상공인을 위한 ChatGPT 활용법에 강사로 참여하면서 만들었던 PPT 가 있었는데요.
그 PPT를 기반으로 유투브 클립을 만들고 있는데 오늘은 두번째 클립을 만들었습니다.
AI 가 얼마나 빨리 변하는지 한달 밖에 안 됐는데 하다 보니까 PPT 내용을 그대로 못 쓰고 비디오 만들면서 계속 업데이트 해야만 했네요.
오늘 내용은 ChatGPT SignUP하면 유리한 점, AI란 무엇인가 그리고 OpenAI의 ChatGPT-4o, Google의 Gemini 그리고 Microsoft의 Copilot 3개를 비교하면서 각각의 장점과 개성들을 파악해 보는 시간을 마련했습니다.
이번에는 OpenAI 의 ChatGPT-4o와 Google의 Gemini 그리고 Microsoft의 Copilot을 모두 사용하면서 비교를 해 봤습니요.
AI 별로 각각 특성과 개성이 있어요.
어떤 때는 이게 더 답이 좋은 것 같고 또 어떤 때는 저게 더 답이 좋은 것 같고 그러네요.
세가지를 모두 사용하면서 서로 답변을 비교하고 사용을 해야 할 것 같아요.
챗지피티와 코파일럿은 이제 이미지 생성까지 해 줘서 더 다양하게 이용할 수 있게 된 것 같습니다.
이런 내용들을 다룬 오늘의 유투브 클립 링크가 아래 있습니다.
 

 

그리고 아래로 가면 세미나에서 사용했던 presentation 내용을 보실 수 있습니다.

 

https://catchupai4sb.streamlit.app/

 

소상공인을 위한 AI

This app was built in Streamlit! Check it out and visit https://streamlit.io for more awesome community apps. 🎈

catchupai4sb.streamlit.app

 

ChatGPT에게 김치찌개 한식당 이벤트에 사용할 그림을 만들어 달라 그랬더니.....

 

아주 이쁜 분이 김치찌개를 들고 소개하는 그림을 그려 주네요.

거기다 한복까지 입히고... 김치찌개도 너무 먹음직 스럽게 잘 그렸구요.

원근감을 살려서 너무 가깝거나 먼 곳은 흐리게 표현하고 핵심 부분은 찐하게 표현했습니다.

 

정말 그림을 잘 그리네요.

 

이번 편에서는 ChatGPT 승입니다. Gemini와 Copilot 보다 여러모로 ChatGPT가 더 우수했습니다.

 

 

 

 

 

반응형


반응형

LangChain - Retrieval Chain

 

이번에 제 유투브 비디오에서 다룬 내용은 랭체인 기능 중 Retrieval  Chain 기능 입니다.

 

LangChain Quick Start를 보면 소단원 4개 중 3개가 Retrieval 관련된 Topic 입니다.

 

AI Web App 개발 field 에서 가장 중요한 개념 중 하나가 RAG (Retrieval Augmented Generation) 입니다.

생성형 AI 의 한계를 보완하기 위해 나온 기술이 RAG 입니다.

 

이번 시간엔 이 RAG에 대해 이해할 수 있도록 도움이 되는 내용이 있습니다.

그 외에 LangChain의 Retrieval Chain을 활용한 AI Web App 구현을 이해하기 위해 미리 공부해 두어야 할 도구들과 API 들에 대해서도 설명합니다.

 

처음 배울 때 단디 해서 나의 AI Web App 개발 능력의 기초를 탄탄하게 다집시다.

 

이번 시간에 Retrieval Chain을 사용해서 직접 AI Web App 개발을 할 수 있는 사전 지식을 꼼꼼히 배우고 다음 비디오에서 이 기능을 사용해서 제가 개발한 AI Web App의 소스 코드 분석을 하겠습니다.

 

이 두 비디오만 다 보면 RAG의 개념과 프로세스를 확실히 아실 수 있을 겁니다.

 

https://youtu.be/M9QfY_-Plsc?si=Cm_sbm89xWvfhoKR

 

 



반응형


반응형

시애틀 지역을 기반으로 활동하고 있는 한인 NGO 단체인 BIGHUG에서 이 지역 소상공인들을 위한 AI 세미나를 마련했습니다.

 

BIGHUG에서 저에게 강의를 해 달라고 해서 나름대로 이곳에서 소상공업에 종사하시는 한인 분들이 어떻게 하면 좀 더 효율적으로 AI를 활용할 수 있을까 많이 고민을 해서 세미나를 준비 했습니다.

 

5월 19일 마이크로소프트 본사가 있는 레드몬드라는 곳에서 세미나가 진행 됐는데요.

 

그 행사 기사가 이 지역 신문에 났네요.

 

 

아래 기사 링크 입니다.

 

https://www.seattlekdaily.com/news/articleView.html?idxno=9517

 

빅허그 - 소상공인을 위한 인공지능 활용법 세미나 성황리에 열려 - 시애틀코리안데일리

빅허그가 지난 19일(일요일) 레드몬드의 오렌지 스투디오에서 개최한 ‘챗지피티로 내 가게 스마트하게 운영하기’ 설명회가 성황리에 마무리 됐다.시애틀지역 한인 소상공인들을 대상으로 인

www.seattlekdaily.com

 

관심이 많은 분야라서 그런지 참가자 분들이 질문도 많이 하시고 실습에도 적극적으로 참여하셔서 아주 좋은 시간이 됐습니다.

 

이날 세미나에 활용했던 자료로 제 유투브 채널에 강의 비디오를 만들어서 올리고 있습니다.

 

https://youtu.be/60jpzEGnPGw?si=0ya6lzEqU7qmHoNN

 

앞으로도 계속 보완을 해서 이곳에 사시는 한인 분들에게 AI 로 도움을 드릴 수 있는 일을 계속 하고 싶네요.

 

반응형
이전 1 다음