mirror of
https://gitee.com/huangge1199_admin/vue-pro.git
synced 2024-11-22 23:31:52 +08:00
【代码优化】AI:完善 SunoApiTests 单测,方便大家快速体验
This commit is contained in:
parent
62d5ed8395
commit
fa230cea8e
@ -68,17 +68,6 @@ public class SunoApi {
|
|||||||
.block();
|
.block();
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<MusicData> chatCompletion(String prompt) {
|
|
||||||
return this.webClient.post()
|
|
||||||
.uri("/v1/chat/completions")
|
|
||||||
.body(Mono.just(new MusicGenerateRequest(prompt)), MusicGenerateRequest.class)
|
|
||||||
.retrieve()
|
|
||||||
.onStatus(STATUS_PREDICATE, EXCEPTION_FUNCTION.apply(prompt))
|
|
||||||
.bodyToMono(new ParameterizedTypeReference<List<MusicData>>() {
|
|
||||||
})
|
|
||||||
.block();
|
|
||||||
}
|
|
||||||
|
|
||||||
public LyricsData generateLyrics(String prompt) {
|
public LyricsData generateLyrics(String prompt) {
|
||||||
return this.webClient.post()
|
return this.webClient.post()
|
||||||
.uri("/api/generate_lyrics")
|
.uri("/api/generate_lyrics")
|
||||||
|
@ -0,0 +1,83 @@
|
|||||||
|
package cn.iocoder.yudao.framework.ai.music;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.ai.core.model.suno.api.SunoApi;
|
||||||
|
import org.junit.jupiter.api.Disabled;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@link SunoApi} 集成测试
|
||||||
|
*
|
||||||
|
* @author xiaoxin
|
||||||
|
*/
|
||||||
|
public class SunoApiTests {
|
||||||
|
|
||||||
|
private final SunoApi sunoApi = new SunoApi("https://suno-3tah0ycyt-status2xxs-projects.vercel.app");
|
||||||
|
// private final SunoApi sunoApi = new SunoApi("http://127.0.0.1:3001");
|
||||||
|
|
||||||
|
@Test // 描述模式
|
||||||
|
@Disabled
|
||||||
|
public void testGenerate() {
|
||||||
|
// 准备参数
|
||||||
|
SunoApi.MusicGenerateRequest generateRequest = new SunoApi.MusicGenerateRequest(
|
||||||
|
"happy music",
|
||||||
|
"chirp-v3-5",
|
||||||
|
false);
|
||||||
|
|
||||||
|
// 调用方法
|
||||||
|
List<SunoApi.MusicData> musicList = sunoApi.generate(generateRequest);
|
||||||
|
// 打印结果
|
||||||
|
System.out.println(musicList);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test // 歌词模式
|
||||||
|
@Disabled
|
||||||
|
public void testCustomGenerate() {
|
||||||
|
// 准备参数
|
||||||
|
SunoApi.MusicGenerateRequest generateRequest = new SunoApi.MusicGenerateRequest(
|
||||||
|
"创作一首带有轻松吉他旋律的流行歌曲,[verse] 描述夏日海滩的宁静,[chorus] 节奏加快,表达对自由的向往。",
|
||||||
|
"Happy",
|
||||||
|
"Happy Song",
|
||||||
|
"chirp-v3.5",
|
||||||
|
false,
|
||||||
|
false);
|
||||||
|
|
||||||
|
// 调用方法
|
||||||
|
List<SunoApi.MusicData> musicList = sunoApi.customGenerate(generateRequest);
|
||||||
|
// 打印结果
|
||||||
|
System.out.println(musicList);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@Disabled
|
||||||
|
public void testGenerateLyrics() {
|
||||||
|
// 调用方法
|
||||||
|
SunoApi.LyricsData lyricsData = sunoApi.generateLyrics("A soothing lullaby");
|
||||||
|
// 打印结果
|
||||||
|
System.out.println(lyricsData);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@Disabled
|
||||||
|
public void testGetMusicList() {
|
||||||
|
// 准备参数
|
||||||
|
// String id = "d460ddda-7c87-4f34-b751-419b08a590ca";
|
||||||
|
String id = "584729e5-0fe9-4157-86da-1b4803ff42bf";
|
||||||
|
|
||||||
|
// 调用方法
|
||||||
|
List<SunoApi.MusicData> musicList = sunoApi.getMusicList(List.of(id));
|
||||||
|
// 打印结果
|
||||||
|
System.out.println(musicList);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@Disabled
|
||||||
|
public void testGetLimitUsage() {
|
||||||
|
// 调用方法
|
||||||
|
SunoApi.LimitUsageData limitUsageData = sunoApi.getLimitUsage();
|
||||||
|
// 打印结果
|
||||||
|
System.out.println(limitUsageData);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -1,50 +0,0 @@
|
|||||||
package cn.iocoder.yudao.framework.ai.music;
|
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.ai.core.model.suno.api.SunoApi;
|
|
||||||
import org.junit.jupiter.api.Test;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
// TODO 芋艿:整理单测
|
|
||||||
/**
|
|
||||||
* @Author xiaoxin
|
|
||||||
* @Date 2024/5/27
|
|
||||||
*/
|
|
||||||
public class SunoTests {
|
|
||||||
|
|
||||||
private final SunoApi sunoApi = new SunoApi("https://suno-55ishh05u-status2xxs-projects.vercel.app");
|
|
||||||
// private final SunoApi sunoApi = new SunoApi("http://127.0.0.1:3001");
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void selectById() {
|
|
||||||
System.out.println(sunoApi.getMusicList(List.of("d460ddda-7c87-4f34-b751-419b08a590ca,ff90ea66-49cd-4fd2-b44c-44267dfd5551")));
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void generate() {
|
|
||||||
List<SunoApi.MusicData> generate = sunoApi.generate(new SunoApi.MusicGenerateRequest("创作一首带有轻松吉他旋律的流行歌曲,[verse] 描述夏日海滩的宁静,[chorus] 节奏加快,表达对自由的向往。"));
|
|
||||||
System.out.println(generate);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void doChatCompletion() {
|
|
||||||
List<SunoApi.MusicData> generate = sunoApi.chatCompletion("创作一首带有轻松吉他旋律的流行歌曲,[verse] 描述夏日海滩的宁静,[chorus] 节奏加快,表达对自由的向往。");
|
|
||||||
System.out.println(generate);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void generateLyrics() {
|
|
||||||
SunoApi.LyricsData lyricsData = sunoApi.generateLyrics("A soothing lullaby");
|
|
||||||
System.out.println(lyricsData);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void selectLimit() {
|
|
||||||
SunoApi.LimitUsageData limitUsageData = sunoApi.getLimitUsage();
|
|
||||||
System.out.println(limitUsageData);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user