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

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

글 보관함

카테고리


반응형
이번 시간에는 지난번 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 Quick Start

 

Retrieval Chain 을 배웁니다.


지난 시간에 코딩으로 구현하기 위해 필요한 사전 지식들을 배웠다면
오늘은 본격적으로 소스코드를 분석하면서 RAG를 이해해 보도록 하겠습니다.

LangChain (랭체인)의 Retrieval Chain을 사용해서 구현한 저의 AI Web App 소스코드를 같이 분석하면서 공부해 봅시다.

제 소스코드를 복사해 가셔서 나름대로 입맛에 맞게 이것 저것 고치시면 RAG의 프로세스에 대해서 확실하게 아실 수 있으실 거예요.

 

https://youtu.be/WZ3050T-CVg?si=o_szhRIFsycIvSN2

 

AI로 이미지를 생성했는데 아주 잘 그리네요.

이번에는 ChatGPT 4o 보다 Copilot이 더 잘 그려서 그걸 썼어요.

 

 

 

 

 

 

 

반응형


반응형

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 로 도움을 드릴 수 있는 일을 계속 하고 싶네요.

 

반응형


반응형
이전 유투브에서 로컬에 AI Web App 개발 환경 하는 방법을 공유 했습니다.
 
저는 LangChain, Streamlit 조합으로 AI Web App 개발 환경을 세팅했습니다.
LLM (Large Language Model)은 대부분 OpenAI의 ChatGPT를 사용하고 있지만 HuggingFace, 구글의 Gemini, 메타의 LLama 그리고 Anthropic의 Claude 등 다른 LLM 들도 같이 공부하고 있습니다.
환경이 다 갖춰 졌으니 AI Web App 을 하나 개발 해 보겠습니다.
 
20년 넘게 개발자 생활을 했고 중간에 멀리 이역만리 미국에 와서 이민생활을 하는 저에게 잘 살았다고 따뜻한 말을 해 주는 ChatGPT 카운셀러 앱을 만들어 봤습니다.
이 앱의 소스 코드를 분석 및 공유 해 드립니다.
이 앱을 이해하고 활용하면 쉽게 본인이 만들고 싶은 AI Web App을 만드실 수 있을 겁니다.
유투브를 보고 도움이 되셨다면 구독과 좋아요 부탁드려요.
 
 

 

 

 

 

반응형


반응형

CNN (Convolutional Neural Network) - 합성곱 신경망

Dive into Deep Learning

 

이번 클립은 Deep Learning이 본격적으로 사용될 수 있는 계기를 만들었던 CNN 을 배워 봅니다.

1989년 벨 연구소에서 만든 LeNet 이 잠깐 사용되다가 잊혀 진 것을

2012년 토론토 대학교 팀이 AlexNet으로 부활을 시키고

그 팀 멤버 중 한명이 나중에 ChatGPT를 만들어 이 세상에 AI 붐을 일으킵니다.

 

AI 혁명에서 중요한 역할을 했던 CNN에 대해 배워 보겠습니다.

 

https://youtu.be/DwulX845Cvs?si=PT1MLWrh9GjxbSvg

 

저 위에 머리 약간 벗겨진 분이 일리야 서츠케버 (Ilya Sutskever) 입니다.

2012년 AlexNet 개발 팀 멤버였습니다.

바로 Deep Learning을 다시 보게 했던 그 유명한 국제 이미지넷 경연대회에서 1등한 팀입니다.

AlexNet 을 만든 팀이 세운 스타트업이 구글에 인수되면서 구글의 연구원으로 들어갑니다.

 

그가 바로 이세돌을 이겼던 알파고 개발을 진두 지휘했던 사람이죠.

 

그러다가 2015년에 인공 지능에 대한 견해 차이로 래리페이지와 갈등이 있었고 일론 머스크가 샘 올트먼과 함께 만든 OpenAI에 합류하게 됩니다. 일론 머스크가 적극적으로 영입에 앞장 섰다고 합니다.

 

거기서 그는 ChatGPT 및 GPT-4의 개발을 주도 했습니다.

 

그러다가 2023년 11월에 이사회가 샘 올트먼을 일방적으로 해고를 했는데요. 쿠테타에 비유 되기도 했죠.

그는 처음에는 이사회 편에 선 듯 했는데 나중에 임직원 90%가 샘 올트먼의 복귀를 요구하는 단체 행동을 벌이고 마이크로 소프트가 그들이 해고되거나 그만 둘 경우 모두 채용하겠다고 나서면서 직원들의 탄원서에 서명을 하게 됩니다. 그리고 사과도 했구요.

 

지금은 이사회에서는 사임을 했지만 OpenAI에서는 계속 일을 하고 있다고 합니다.

 

이런 흥미 진진한 AI의 딥러닝을 전세계에 첫선을 보이게 한 CNN에 대해 좀 더 깊이 한번 공부 해 보세요.

 

 

 

반응형


반응형

https://openai.com/blog/function-calling-and-other-api-updates

 

Function calling and other API updates

We’re announcing updates including more steerable API models, function calling capabilities, longer context, and lower prices.

openai.com

 

Function calling and other API updates

We’re announcing updates including more steerable API models, function calling capabilities, longer context, and lower prices.

우리는 더 조정 가능한 API 모델, 함수 호출 기능, 더 긴 컨텍스트 및 더 낮은 가격을 포함한 업데이트를 발표합니다.

 

June 13, 2023

AnnouncementsProduct

 

We released gpt-3.5-turbo and gpt-4 earlier this year, and in only a short few months, have seen incredible applications built by developers on top of these models.

 

우리는 올해 초에 gpt-3.5-turbo 및 gpt-4를 출시했고 불과 몇 달 만에 개발자들이 이러한 모델 위에 구축한 놀라운 애플리케이션을 보았습니다.

 

Today, we’re following up with some exciting updates:

 

오늘 우리는 다음과 같은 몇 가지 흥미로운 업데이트를 진행합니다.

 

  • new function calling capability in the Chat Completions API
  • Chat Completions API의 새로운 함수 호출 기능
  • updated and more steerable versions of gpt-4 and gpt-3.5-turbo
  • gpt-4 및 gpt-3.5-turbo의 업데이트되고 조정 가능한 버전
  • new 16k context version of gpt-3.5-turbo (vs the standard 4k version)
  • gpt-3.5-turbo의 새로운 16k 컨텍스트 버전(표준 4k 버전 대비)
  • 75% cost reduction on our state-of-the-art embeddings model
  • 최첨단 임베딩 모델로 비용 75% 절감
  • 25% cost reduction on input tokens for gpt-3.5-turbo
  • gpt-3.5-turbo의 입력 토큰 비용 25% 감소
  • announcing the deprecation timeline for the gpt-3.5-turbo-0301 and gpt-4-0314 models
  • gpt-3.5-turbo-0301 및 gpt-4-0314 모델에 대한 지원 중단 일정 발표

All of these models come with the same data privacy and security guarantees we introduced on March 1 — customers own all outputs generated from their requests and their API data will not be used for training.

 

이러한 모든 모델에는 3월 1일에 도입한 것과 동일한 데이터 개인 정보 보호 및 보안 보장이 제공됩니다. 고객은 요청에서 생성된 모든 출력을 소유하고 API 데이터는 교육에 사용되지 않습니다.

 

Function calling

Developers can now describe functions to gpt-4-0613 and gpt-3.5-turbo-0613, and have the model intelligently choose to output a JSON object containing arguments to call those functions. This is a new way to more reliably connect GPT's capabilities with external tools and APIs.

 

개발자는 이제 gpt-4-0613 및 gpt-3.5-turbo-0613에 함수를 설명하고 모델이 이러한 함수를 호출하기 위한 인수가 포함된 JSON 개체를 출력하도록 지능적으로 선택하도록 할 수 있습니다. 이는 GPT의 기능을 외부 도구 및 API와 보다 안정적으로 연결하는 새로운 방법입니다.

 

 

These models have been fine-tuned to both detect when a function needs to be called (depending on the user’s input) and to respond with JSON that adheres to the function signature. Function calling allows developers to more reliably get structured data back from the model. For example, developers can:

 

이러한 모델은 (사용자 입력에 따라) 함수를 호출해야 하는 시기를 감지하고 함수 서명을 준수하는 JSON으로 응답하도록 미세 조정되었습니다. 함수 호출을 통해 개발자는 모델에서 구조화된 데이터를 보다 안정적으로 가져올 수 있습니다. 예를 들어 개발자는 다음을 수행할 수 있습니다.

 

  • Create chatbots that answer questions by calling external tools (e.g., like ChatGPT Plugins)
  • 외부 도구(예: ChatGPT 플러그인)를 호출하여 질문에 답하는 챗봇 생성

 

Convert queries such as “Email Anya to see if she wants to get coffee next Friday” to a function call like send_email(to: string, body: string), or “What’s the weather like in Boston?” to get_current_weather(location: string, unit: 'celsius' | 'fahrenheit').

 

"다음 금요일에 커피를 마시고 싶은지 확인하기 위해 Anya에게 이메일 보내기"와 같은 쿼리를 send_email(to: 문자열, 본문: 문자열) 또는 "보스턴의 날씨는 어떻습니까?"와 같은 쿼리를 get_current_weather(location: string, unit: 'celsius' | 'fahrenheit') 함수 호출로 변환합니다.

 

  • Convert natural language into API calls or database queries
  • 자연어를 API 호출 또는 데이터베이스 쿼리로 변환

 

Convert “Who are my top ten customers this month?” to an internal API call such as get_customers_by_revenue(start_date: string, end_date: string, limit: int), or “How many orders did Acme, Inc. place last month?” to a SQL query using sql_query(query: string).

 

"이번 달 내 상위 10명의 고객은 누구입니까?" 를 get_customers_by_revenue(start_date: string, end_date: string, limit: int)과 같은 internal API 로 convert 합니다. 또는 "지난 달 Acme, Inc.에서 몇 건의 주문을 했습니까?"와 같은 내부 API 호출에 sql_query(query: string)를 사용한 SQL 쿼리로 변환합니다.

 

  • Extract structured data from text
  • 텍스트에서 구조화된 데이터 추출

 

Define a function called extract_people_data(people: [{name: string, birthday: string, location: string}]), to extract all people mentioned in a Wikipedia article.

 

extract_people_data(people: [{name: string, birthday: string, location: string}])라는 함수를 정의하여 Wikipedia 기사에 언급된 모든 사람을 추출합니다.

 

These use cases are enabled by new API parameters in our /v1/chat/completions endpoint, functions and function_call, that allow developers to describe functions to the model via JSON Schema, and optionally ask it to call a specific function. Get started with our developer documentation and add evals if you find cases where function calling could be improved

 

이러한 사용 사례는 개발자가 JSON 스키마를 통해 모델에 함수를 설명하고 선택적으로 특정 함수를 호출하도록 요청할 수 있는 /v1/chat/completions 엔드포인트, functions 및 function_call의 새로운 API 매개변수에 의해 활성화됩니다. 개발자 설명서를 시작하고 함수 호출을 개선할 수 있는 경우를 찾으면 평가를 추가하십시오.

 

Function calling example

Request

curl https://api.openai.com/v1/chat/completions -u :$OPENAI_API_KEY -H 'Content-Type: application/json' -d '{
  "model": "gpt-3.5-turbo-0613",
  "messages": [
    {"role": "user", "content": "What is the weather like in Boston?"}
  ],
  "functions": [
    {
      "name": "get_current_weather",
      "description": "Get the current weather in a given location",
      "parameters": {
        "type": "object",
        "properties": {
          "location": {
            "type": "string",
            "description": "The city and state, e.g. San Francisco, CA"
          },
          "unit": {
            "type": "string",
            "enum": ["celsius", "fahrenheit"]
          }
        },
        "required": ["location"]
      }
    }
  ]
}'

Response

 

{
  "id": "chatcmpl-123",
  ...
  "choices": [{
    "index": 0,
    "message": {
      "role": "assistant",
      "content": null,
      "function_call": {
        "name": "get_current_weather",
        "arguments": "{ \"location\": \"Boston, MA\"}"
      }
    },
    "finish_reason": "function_call"
  }]
}

 

 

Request

curl https://weatherapi.com/...

Response

{ "temperature": 22, "unit": "celsius", "description": "Sunny" }

 

 

Request

curl https://api.openai.com/v1/chat/completions -u :$OPENAI_API_KEY -H 'Content-Type: application/json' -d '{
  "model": "gpt-3.5-turbo-0613",
  "messages": [
    {"role": "user", "content": "What is the weather like in Boston?"},
    {"role": "assistant", "content": null, "function_call": {"name": "get_current_weather", "arguments": "{ \"location\": \"Boston, MA\"}"}},
    {"role": "function", "name": "get_current_weather", "content": "{\"temperature\": "22", \"unit\": \"celsius\", \"description\": \"Sunny\"}"}
  ],
  "functions": [
    {
      "name": "get_current_weather",
      "description": "Get the current weather in a given location",
      "parameters": {
        "type": "object",
        "properties": {
          "location": {
            "type": "string",
            "description": "The city and state, e.g. San Francisco, CA"
          },
          "unit": {
            "type": "string",
            "enum": ["celsius", "fahrenheit"]
          }
        },
        "required": ["location"]
      }
    }
  ]
}'

 

Response

{
  "id": "chatcmpl-123",
  ...
  "choices": [{
    "index": 0,
    "message": {
      "role": "assistant",
      "content": "The weather in Boston is currently sunny with a temperature of 22 degrees Celsius.",
    },
    "finish_reason": "stop"
  }]
}

 

Since the alpha release of ChatGPT plugins, we have learned much about making tools and language models work together safely. However, there are still open research questions. For example, a proof-of-concept exploit illustrates how untrusted data from a tool’s output can instruct the model to perform unintended actions. We are working to mitigate these and other risks. Developers can protect their applications by only consuming information from trusted tools and by including user confirmation steps before performing actions with real-world impact, such as sending an email, posting online, or making a purchase.

 

ChatGPT 플러그인의 알파 릴리스 이후로 우리는 도구와 언어 모델이 안전하게 함께 작동하도록 만드는 방법에 대해 많은 것을 배웠습니다. 그러나 여전히 열려 있는 연구 질문이 있습니다. 예를 들어 개념 증명 익스플로잇은 도구 출력의 신뢰할 수 없는 데이터가 의도하지 않은 작업을 수행하도록 모델에 지시할 수 있는 방법을 보여줍니다. 우리는 이러한 위험 및 기타 위험을 완화하기 위해 노력하고 있습니다. 개발자는 신뢰할 수 있는 도구의 정보만 사용하고 이메일 보내기, 온라인 게시 또는 구매와 같은 실제 영향이 있는 작업을 수행하기 전에 사용자 확인 단계를 포함하여 애플리케이션을 보호할 수 있습니다.

 

 

New models

 

GPT-4

 

gpt-4-0613 includes an updated and improved model with function calling.

 

gpt-4-0613에는 함수 호출로 업데이트되고 개선된 모델이 포함되어 있습니다.

 

gpt-4-32k-0613 includes the same improvements as gpt-4-0613, along with an extended context length for better comprehension of larger texts.

 

gpt-4-32k-0613에는 gpt-4-0613과 동일한 개선 사항이 포함되어 있으며 더 큰 텍스트를 더 잘 이해할 수 있도록 컨텍스트 길이가 확장되었습니다.

 

With these updates, we’ll be inviting many more people from the waitlist to try GPT-4 over the coming weeks, with the intent to remove the waitlist entirely with this model. Thank you to everyone who has been patiently waiting, we are excited to see what you build with GPT-4!

 

이 업데이트를 통해 우리는 이 모델로 대기자 명단을 완전히 제거하기 위해 앞으로 몇 주 동안 대기자 명단에서 더 많은 사람들을 초대하여 GPT-4를 시도할 것입니다. 끈기 있게 기다려주신 모든 분들께 감사드립니다. 여러분이 GPT-4로 빌드하는 것을 보게 되어 기쁩니다!

 

GPT-3.5 Turbo

 

gpt-3.5-turbo-0613 includes the same function calling as GPT-4 as well as more reliable steerability via the system message, two features that allow developers to guide the model's responses more effectively.

 

gpt-3.5-turbo-0613에는 GPT-4와 동일한 기능 호출과 시스템 메시지를 통한 보다 안정적인 조종성, 개발자가 모델의 응답을 보다 효과적으로 안내할 수 있는 두 가지 기능이 포함되어 있습니다.

 

gpt-3.5-turbo-16k offers 4 times the context length of gpt-3.5-turbo at twice the price: $0.003 per 1K input tokens and $0.004 per 1K output tokens. 16k context means the model can now support ~20 pages of text in a single request.

 

gpt-3.5-turbo-16k는 두 배의 가격으로 gpt-3.5-turbo 컨텍스트 길이의 4배를 제공합니다: 입력 토큰 1,000개당 $0.003 및 출력 토큰 1,000개당 $0.004. 16k 컨텍스트는 이제 모델이 단일 요청에서 최대 20페이지의 텍스트를 지원할 수 있음을 의미합니다.

 

 

Model deprecations

Today, we’ll begin the upgrade and deprecation process for the initial versions of gpt-4 and gpt-3.5-turbo that we announced in March. Applications using the stable model names (gpt-3.5-turbo, gpt-4, and gpt-4-32k) will automatically be upgraded to the new models listed above on June 27th. For comparing model performance between versions, our Evals library supports public and private evals to show how model changes will impact your use cases. 

 

오늘 우리는 3월에 발표한 gpt-4 및 gpt-3.5-turbo의 초기 버전에 대한 업그레이드 및 사용 중단 프로세스를 시작합니다. 안정적인 모델 이름(gpt-3.5-turbo, gpt-4 및 gpt-4-32k)을 사용하는 애플리케이션은 6월 27일에 위에 나열된 새 모델로 자동 업그레이드됩니다. 버전 간 모델 성능을 비교하기 위해 Evals 라이브러리는 공개 및 비공개 평가를 지원하여 모델 변경이 사용 사례에 어떤 영향을 미치는지 보여줍니다.

 

 

Developers who need more time to transition can continue using the older models by specifying gpt-3.5-turbo-0301, gpt-4-0314, or gpt-4-32k-0314 in the ‘model’ parameter of their API request. These older models will be accessible through September 13th, after which requests specifying those model names will fail. You can stay up to date on model deprecations via our model deprecation page. This is the first update to these models; so, we eagerly welcome developer feedback to help us ensure a smooth transition.

 

전환하는 데 시간이 더 필요한 개발자는 API 요청의 '모델' 매개변수에 gpt-3.5-turbo-0301, gpt-4-0314 또는 gpt-4-32k-0314를 지정하여 이전 모델을 계속 사용할 수 있습니다. 이러한 이전 모델은 9월 13일까지 액세스할 수 있으며 그 이후에는 해당 모델 이름을 지정하는 요청이 실패합니다. 모델 지원 중단 페이지를 통해 모델 지원 중단에 대한 최신 정보를 확인할 수 있습니다. 이것은 이러한 모델에 대한 첫 번째 업데이트입니다. 따라서 원활한 전환을 보장하는 데 도움이 되는 개발자 피드백을 기꺼이 환영합니다.

 

 

Lower pricing

We continue to make our systems more efficient and are passing those savings on to developers, effective today.

우리는 계속해서 시스템을 더 효율적으로 만들고 이러한 절감액을 개발자에게 전달하고 있습니다. 오늘부터 유효합니다.

 

Embeddings

text-embedding-ada-002 is our most popular embeddings model. Today we’re reducing the cost by 75% to $0.0001 per 1K tokens.

text-embedding-ada-002는 가장 인기 있는 임베딩 모델입니다. 오늘 우리는 비용을 75% 줄여 1,000개 토큰당 $0.0001입니다.

 

GPT-3.5 Turbo

gpt-3.5-turbo is our most popular chat model and powers ChatGPT for millions of users. Today we're reducing the cost of gpt-3.5-turbo’s input tokens by 25%. Developers can now use this model for just $0.0015 per 1K input tokens and $0.002 per 1K output tokens, which equates to roughly 700 pages per dollar.

gpt-3.5-turbo는 당사의 가장 인기 있는 채팅 모델이며 수백만 명의 사용자를 위한 ChatGPT를 지원합니다. 오늘 우리는 gpt-3.5-turbo의 입력 토큰 비용을 25%까지 줄입니다. 개발자는 이제 이 모델을 1K 입력 토큰당 $0.0015 및 1K 출력 토큰당 $0.002로 사용할 수 있습니다. 이는 달러당 약 700페이지에 해당합니다.

 

gpt-3.5-turbo-16k will be priced at $0.003 per 1K input tokens and $0.004 per 1K output tokens.

 

gpt-3.5-turbo-16k의 가격은 입력 토큰 1,000개당 $0.003, 출력 토큰 1,000개당 $0.004입니다.

 

Developer feedback is a cornerstone of our platform’s evolution and we will continue to make improvements based on the suggestions we hear. We’re excited to see how developers use these latest models and new features in their applications.

 

개발자 피드백은 우리 플랫폼 발전의 초석이며 우리는 우리가 듣는 제안을 기반으로 계속해서 개선할 것입니다. 개발자가 애플리케이션에서 이러한 최신 모델과 새로운 기능을 어떻게 사용하는지 보게 되어 기쁩니다.

 

 

반응형
이전 1 2 3 4 5 다음