본문 바로가기

discord bot

디스코드 봇 개발 일지 2024-02-25 - 코드 리팩토링 + command aliases ※ 작성자가 작성한 내용이 일부 틀릴 수도 있음 주의 ※ 직접 하면서 알게된 것을 모두 써서 사족이 많음 ※ 리빙 포인트) 리팩토링은 염원이자 닿을 수 없는 미래다 인턴이 끝났다 채용 연계 인턴은 아니라서 되게 짧기는 했는데 그래도 배운 것도 많았고 돈도 받아서 기분이 좋다. 같이 일했던 분도 업무하시면서 (요약하자면) '아 리팩토링 해야하는데' 라는 말씀을 많이 하셨다. 새 학기 시작 전이고, 그런김에 좀 배운 것을 바탕으로 모듈 단위로 좀 파일도 나누어서 코드 짜기에 더 좋게 리팩토링을 해보려고 한다. 글을 쓰는 것이 너무 어려웠다 사실 글을 쓰는 데에 너무 막히는 경우가 많았거나 한 번에 많은 것을 넣으려다가 글 하나 쓰는 데에 며칠이 걸려서 수정에 수정에 수정을 하다보니 피로해지는 것도 있긴 했다.. 더보기
디스코드 봇 개발 일지 2024-01-19 - 로컬에서 LLM 돌려보기 대실패 ※ 작성자가 작성한 내용이 일부 틀릴 수도 있음 주의 ※ 직접 하면서 알게된 것을 모두 써서 사족이 많음 ※ 리빙 포인트) 일하고 퇴근하면 피곤하다 오랜 시간이 지났다 2학기 수업을 빡세게 보내고 팀 프로젝트에서 3명 중 갑자기 1명이 10월 이후로 기여하는 게 없다가 제출 이틀 전에 와서야 포기 선언 때리고 지금은 모 회사에서 인턴을 하고 있다 어딘지, 언제까진지 등은 모두 비밀 어쨌든 퇴근하면 피곤해서 아무것도 하기 싫다 그렇지만... 그래도 계속 운영은 하고 싶기도 하고 나의 일기를 적어놓는 공간이기도 하기에 오랜만에 글을 하나 써보려 한다 사실 그동안 블로그에 올리고 싶었던 것들을 시도해봤는데 모두 다 여러 이유로 실패를 했다 뭔가 진행이 되면 그걸 주제로 쓰고 싶었는데 너무 안돼서 이렇게라도 뭘.. 더보기
디스코드 봇 개발 일지 2023-07-10 - TTS 봇 - RVC로 목소리 학습시키기 ※ 작성자가 작성한 내용이 일부 틀릴 수도 있음 주의 ※ 이 글에서 사용하는 프로그램 모두 오픈 소스를 이용했기 때문에 직접 코드를 올리지 않음 ※ 직접 하면서 알게된 것을 모두 써서 사족이 많음 RVC (Retrieval-based-Voice-Conversion) 뭐 AI 라는 것이 다 그렇지만, 결국 방식의 차이가 있을뿐, 효율성을 높이는 것이 그 목적이며, 그렇게 매번 새로운 기술이 나오기 마련이다. 그래서 23년 4월에 나온 것으로 보이는 이 RVC를 이용해서 저번 글에서 모았던 목소리 데이터를 가지고 학습을 시킬 것이다. 참고로 SCE-TTS에서 제시한 방법은 학습에 대략 2~3시간 정도로 예상되며, RVC는 실제로 약 3~40분(데이터 양에 비례) 정도가 걸렸던 것을 생각하면 RVC가 확실히 .. 더보기
디스코드 봇 개발 일지 2023-07-03 - TTS 봇 - 목소리 데이터 모으기 (1) ※ 작성자가 작성한 내용이 일부 틀릴 수도 있음 주의 ※ 이 글에서 사용하는 프로그램 모두 오픈 소스를 이용했기 때문에 직접 코드를 올리지 않음 ※ 직접 하면서 알게된 것을 모두 써서 사족이 많음 일단은 목소리를 학습을 시켜보자 일단은 학습된 모델이 있어야 소리를 낼 수 있기 때문에 그것부터 만들어보자. 사실 학습 모델(RVC 등)과 그것에 의해 학습된 모델(그거로 생성된거)이라는 명칭을 쓰는 것이 맞는지는 모르겠는데 일단은 그렇게 서술을 하겠다. 항상 공부하면서 그렇지만 정말 용어가 제일 헷갈린다. SCE-TTS 내 목소리를 이용해서 TTS를 만드는 방법을 검색해서 찾아낸 깃허브 프로젝트다. 링크는 아래에 있다. https://gist.github.com/yunho0130/a97db3296314cd70.. 더보기
디스코드 봇 개발 일지 2023-06-26 - TTS (Text to Speech) 봇 (1) - 아이디어 구상 ※ 작성자가 작성한 내용이 일부 틀릴 수도 있음 주의 ※ 작성자가 코드 쓰다가 계속 코드 수정함 주의 TTS (Text to Speech) 봇을 만들어보기로 계획을 했었다. 1학기 바쁜 나날 중, 친구하고 이야기하다가 아이디어를 구상했다. 지금 군인인 친구들이 디스코드에 폰으로 들어와서 (생활관에서 계속 이야기할 수는 없으니까) TTS 봇을 이용해서 말하는데, 가끔 여러 명의 친구가 사용할 때마다 같은 목소리가 나와서 누가 말하는지 헷갈리는 경우가 자주 발생한다. 이는 일반적으로 각 '언어' 별로 하나씩 되어있는 것에 의한 것이 대부분이다. 하지만 이 또한 각 계정마다 다른 언어를 지정해서 말할 수 있기 때문에, 우리가 다른 '목소리'를 지정해서 TTS 봇을 이용한다면 같은 한국어 모델을 써도 각 사람마.. 더보기
디스코드 봇 개발 일지 2023-03-03 - OpenAI 업데이트 및 모델(GPT3.5-turbo) 교체 ※ 작성자가 작성한 내용이 일부 틀릴 수도 있음 주의 ※ 작성자가 코드 쓰다가 계속 코드 수정함 주의 OpenAI API 가 업데이트가 되었다. 그리고 아예 채팅 특화 모델인 gpt-3.5-turbo 가 생겼고, 가격도 기존 davinci 모델에 비해 0.1배의 가격인 1k token 당 $0.002 로 책정되었다. openai 자체는 버전이 대략 2.6.5 에서 2.7 버전으로 바뀐 것 같다. 일단은 OpenAI 파이썬 패키지를 업데이트 하자. pip install openai --upgrade 그냥 평범하게 cmd 켜서 이걸 쳐주자. 2.7.0 버전인가 그게 설치되었다면 된 것이다. (23.03.11 추가) GPT-3.5-turbo 로 바꾸기만 하면 모델만 바꾸면 아래의 에러 메시지가 뜬다. 혹시나 .. 더보기
디스코드 봇 개발 일지 2023-02-21 - youtube_dl uploader_id 문제 ※ 작성자가 작성한 내용이 일부 틀릴 수도 있음 주의 ※ 작성자가 코드 쓰다가 계속 코드 수정함 주의 한 5일 전에 youtube_dl 자체에 문제가 생겼다고 한다. 그 문제를 내가 발견한 날짜는 오늘. 2월 21일 이다. 음악 봇을 오랜만에 켜보려했는데 uploader_id 가 뭔가 문제가 있다고 한다. ERROR: Unable to extract uploader id; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see https://yt-dl.org/update on how to update. Be sure to call youtube-dl with the --verbose.. 더보기
디스코드 봇 개발 일지 2023-02-17 - OpenAI / ChatGPT / GPT-3 로 챗봇 만들기 ※ 작성자가 작성한 내용이 일부 틀릴 수도 있음 주의 ※ 작성자가 코드 쓰다가 계속 코드 수정함 주의 어떻게 하면 최대한 적은 token을 소모할까? 확실한 거는 간단한 질문 답변 형태가 가장 적은 token을 소모한다는 것이다. prompt에 단순히 물어볼 말 하나만 딱 넣는 것이 그거다. 가격 정책에서 물어본 질문의 tokens + 답변 tokens 가 사용량에 들어가므로, 두 가지 모두 최소가 되어야 한다. 하지만 저번 글에도 말했지만, 말투를 학습시켜서 이용하고 싶은 욕구도 있기 때문에 어떻게 하면 잘 조절할 수 있는가? 챗봇의 타입을 나누는 것이 방법이라고 판단했다. 코드 구조를 구성해보자. ...그래서 다음과 같이 타입을 나누었다. "QnA" : 간단한 질문 답변 형태. 기존의 대화는 영향을 .. 더보기

728x90
반응형