Language

0.개요기존 gradio API를 사용하던 Applio를 업데이트 하니 API 사용이 사라졌다.... 이게 무슨일인가싶어서 Github 이슈에 들어가서 확인해보았다.    아이고... 확인해보니 더이상 제공하지않고 답변을 확인해보니 core.py에 있는 요소들을 사용해서 직접 서버를 구축해야될거같다.     1.FASTAPI 구축하기Core.py를 살펴본 결과 다음 메소드가 내가 원하는 텍스트를 wav 파일로 TTS 해주는 메소드임을 확인하였다.  그래서 main.py를 따로 생성하여 FASTAPI 서버를 구축하여 /tts 경로로 엔드포인트를 생성해줬다.from fastapi import FastAPI, Formfrom typing import Optionalimport osfrom core import..
구버전 글입니다.   0.개요지난번 유튜브에서 본 VoiceVox로 TTS챗봇을 만들기를 해봤는데 여기서 TTS부분을 RVC 모델을 사용한것으로 바꾸기 하였다.https://asa9874.tistory.com/576 [Python] langchain + VoceVox 로 tts 챗봇 만들기0.개요유튜브를 돌아다니다가 한 영상을 접하게 되었다.How to Make Your Own AI Waifu Virtual VTUBER or Assistant (당신만의 AI  버튜버나 Assistant를 만드세요)    최근 LangChain을 배우고 있는 도중이라 보던asa9874.tistory.com      1.RVC(Retrieval-based Voice Conversion)음성 변환 기술의 한 종류이다.음성 데..
0.개요유튜브를 돌아다니다가 한 영상을 접하게 되었다.How to Make Your Own AI Waifu Virtual VTUBER or Assistant (당신만의 AI  버튜버나 Assistant를 만드세요)    최근 LangChain을 배우고 있는 도중이라 보던중 흥미로운 부분을 발견하였다.TTS 부분을 VoiceVox 프로그램을 통해 해결하고있었다.   VoiceVox는 일본 TTS를 지원하는 무료 프로그램인데  찾아보니 내부적으로 로컬 서버가 하나 열리고 그곳에서 처리하는것을 알게되었다.그러면 해당 코드를 참고하여 한번 코드를 만들어보자https://voicevox.hiroshiba.jp/        1.코드우선 나는 돈이 없기때문에 ChatGPT API 대신 Ollama로 LLama 3...
람다 표현식이름이 없는 함수를 간결하게 정의Arrays.sort(list, new StringLengthComparator());Arrays.sort(list, (s1, s2) -> s1.length() - s2.length());-> 화살표연산자() 안에 매개변수(없으면 빈괄호)() 는 매개변수 1개면 생략가능매개변수 타입 생략시 var 적용일부만 var 적용불가능표현식여러문장이면 {} 작성람다 표현식은 그 표현식이 등장하는 블록 가시영역에 포함됨캡처라고함캡처된변수는 수정불가하지만 참조변수면 객체상태는 변경가능int num = 10; // 지역 변수// num이 final 이거나 실질적 final 변수일때만 캡처가능// 람다 표현식에서 num을 사용Runnable r = () -> System.out..
범용함수template의 사용interface필요범용 클래스유지하는 값의 타입을 제한없음모든 타입으로 유지범용 클래스 내의 T 타입 객체를 new 불가필요한 객체를 외부에서 생성하여 전달함배열은 Object 배열,template을이용하는 자료구조interface필요없음public class Box { private T value; public Box(T value) { this.value = value; }}범용 객체 생성List files = new ArrayList();List files = new ArrayList();//타입지정생략var files = new ArrayList();T files = new V();범용메소드타입 매개변수를 가지는 메소드다양한 타입을 처리할..
Object 클래스상속받지않으면 자동으로 Object 클래스 상속(모든 클래스의 부모)toString 메소드System.out을 이용한 출력 디버깅재정의안해도 호출은가능하지만 유용하지않음 @Override public String toString() { return "Person{name='" + name + "', age=" + age + "}"; }equals 메소드두객체 내부 상태 비교할때 사용Object클래스 의 equals는 주소검사(같은 객체를 가리키는지검사) @Overridepublic boolean equals(Object obj) { if (this == obj) return true; // 자기 자신과 비교 if (obj == null || getClass() !..
쓰레드CPU를 통해 실행하는 최소 단위Runnable interface 구현하여 정의main이 끝나도 쓰레드가 아직 수행 중이면 프로그램은 종료하지 않음타이머java.util.Timer정해진 시간 간격마다 사건을 발생record데이터 클래스를 간단하게 정의상속받을수없고 final 클래스임getter, toString(), equals(), hashCode() 자동생성record 객체는 불변객체임멤버 변수 중 참조 타입의 불변 객체가 아닌 객체가 있으면주의(getter로 접근뒤에 내부 수정할수있음)public record Position(int a, int b) { //a,b는 private 필드고 getter,setter로 접근해야함 // 추가적인 메서드를 작성 가능}새로 추가된 생성자는 반드..
내부 클래스소스 파일 줄이기공개할 필요없는것 숨기기클래스 내부 클래스의 종류와 상관없이 외부 클래스 객체는 내부 클래스 객체의멤버를 접근 권한 수식어 상관없이 접근할 수 있음클래스 내부 클래스를 정의할 때 보통 private로 함 (다른 클래스에서 사용못하게)일반 내부 클래스는 static 멤버를 가질수없음(중첩클래스는 가능)private로 정의해도 outter 클래스는 접근가능public class OuterClass { private String message = "Hello from OuterClass"; // private 내부 클래스 private class InnerClass { public void displayMessage() { System..
아사_
'Language' 카테고리의 글 목록