AI 부트캠프 126

TIL 41

강의 외부에서 추가로 알게 된 내용eval() 함수Python에서 문자열 형태로 작성된 표현식을 실행하여 그 결과를 반환하는 함수다. 즉, 코드나 수식을 문자열로 받아서 실행시켜 결과를 돌려준다. 예를 들어보자.# 기본적인 사용 예시expression = "3 + 5 * 2"result = eval(expression) # 문자열 안의 수식을 계산하여 실행print(result) # 출력: 13위 코드에서 eval()은 문자열 "3 + 5 * 2"를 실제 코드처럼 계산해서 결과값인 13을 반환한다. 그러나 eval()은 보안상의 위험이 있을 수 있다. 입력된 문자열이 안전한지 확인하지 않으면 의도치 않은 코드를 실행하여 보안 문제가 발생할 수 있다. 예를 들어, 악의적인 코드가 포함된 문자열을 eva..

TIL 40

이번에는 영어 텍스트를 입력받아서 한국어로 번역하고, 해당 번역문을 한국어 음성으로 변환해서 재생하는 프로그램을 만들어볼 것이다. 우리는 이전에 배운 페이스북 번역 모델과, ElevenLabs의 음성 합성 API를 사용해서, 번역과 음성 생성을 처리하고, 이걸 PyQt로 사용자 친화적인 인터페이스를 통해 제공할 예정이다. 바로 시작해보자.필요한 라이브러리들을 import하자. 이 중 pydub는 음성을 재생하거나 미디어 파일을 관리할 때 유용한 라이브러리 중 하나다.import osimport requestsfrom dotenv import load_dotenvfrom PyQt5 import QtWidgetsfrom PyQt5.QtCore import QUrlfrom PyQt5.QtMultimedia i..

WIL 6

저번 주차 실습부터 모르는 부분이 생기면 적극적으로 튜터님께 찾아가기로 마음을 먹었었다. 이번 주차에도 모르는 부분이 생겼을 때, 혼자서 이것저것 해보고 찾아보다가 안 되면 튜터님께 찾아가서 해결할 수 있었다. 혼자서 볼 때는 보이지 않던 부분들이 많았는데 생각보다 쉽게 해결되는 경우도 있었고, 튜터님과 함께 무엇이 잘못됐는지 차근차근 찾아낼 수도 있었다. 이번 주차는 이해하기는 어렵지 않았지만, 막상 적용하려니 어려운 느낌이 많이 들었다. 강의를 듣고 다 이해했다고 생각했는데, 실제로 해보려니 잘 되지 않았다. 어떻게 해야할 지 막막했는데, 수준별 학습과 특강이 많이 도움이 되었다. 수준별 학습을 통해서 강의에 대한 보충도 할 수 있었고 새로운 내용도 알게 되었다. 수업을 해주시는 튜터님께 늘 감사하다..

TIL 39 필수 과제

5. 벡터 임베딩 생성OpenAI 모델을 사용했기 때문에 OpenAIEmbeddings를 이용해 텍스트를 벡터로 변환할 벡터 임베딩을 생성했다. langchain_openai 라이브러리에서 OpenAIEmbeddings 클래스를 불러온다.from langchain_openai import OpenAIEmbeddings# OpenAI 임베딩 모델 초기화embeddings = OpenAIEmbeddings(model="text-embedding-ada-002")text-embedding-ada-002 모델을 사용하여 텍스트 데이터를 임베딩 벡터로 변환한다. 이 모델은 텍스트 데이터를 고차원 벡터로 변환하는 데 사용된다. 자연어 처리(NLP) 작업에서 텍스트를 벡터 공간으로 변환하여, 유사도 검색, 클러스터링..

TIL 38 개인 과제

LLM 과 RAG를 활용하여 AI 챗봇을 구현해보자 1. 사용환경 준비 환경 변수에서 api 키를 가져오는 과정에서 문제가 발생했다. 처음에 작성한 코드는 아래와 같다.import openaiimport osfrom dotenv import load_dotenv# .env 파일 로드load_dotenv() # .env 파일을 로드하여 환경 변수들을 설정한다.# .env 파일에서 api 키 가져오기API_KEY = os.getenv('sparta_api_key')# openai 클라이언트에 API 키 설정openai.api_key = API_KEY이 코드를 통해 api 키를 가져왔고, 전체 코드를 실행하니 자꾸 오류가 발생했다.openai.OpenAIError: The api_key client opt..

TIL 37

RAG vs Prompt engineering vs Fine tuning각각이 무엇이고, 차이점이 무엇인가?이 3가지 개념은 생성형 AI 모델을 최적화하거나, 특정 목적에 맞춰 성능을 높이기 위한 방법들이다.RAGRetrieval-Augmented Generation. 검색-증강 생성외부 소스에서 가져온 사실을 통해 생성형 AI 모델의 정확성과 신뢰성을 향상시키는 기술기존 정보 검색 시스템(예: 검색 및 데이터베이스)의 강점과 생성형 대규모 언어 모델(LLM)의 기능을 결합한 AI 프레임워크개념 : 생성형 AI 모델이 정보를 생성할 때, 사전에 학습된 지식만을 사용하는 것이 아니라, 외부 데이터베이스에서 관련 정보를 검색하고, 이를 바탕으로 답변을 생성하는 방식이다.예) 고객 지원 챗봇이 실시간으로 최신..