Lyria 3.5 adalah serangkaian model pembuatan musik Google, yang tersedia melalui Gemini API. Dengan Lyria 3.5, Anda dapat menghasilkan audio stereo 44, 1 kHz berkualitas tinggi dari perintah teks atau dari gambar. Model ini memberikan koherensi struktural, termasuk vokal, lirik yang disesuaikan waktunya, dan aransemen instrumental lengkap.
Keluarga Lyria mencakup model:
| Model | ID Model | Paling cocok untuk | Durasi | Output |
|---|---|---|---|---|
| Klip Lyria 3 | lyria-3-clip-preview |
Klip pendek, loop, pratinjau | 30 detik | MP3 |
| Lyria 3.5 | lyria-3.5 |
Lagu lengkap dengan bait, refrein, dan jembatan | Beberapa menit (dapat dikontrol menggunakan perintah) | MP3 |
Kedua model dapat digunakan menggunakan Interactions API baru, yang mendukung input multimodal (teks dan gambar), serta menghasilkan audio stereo dengan akurasi tinggi 44,1 kHz.
Membuat klip musik
Model Klip Lyria 3 selalu menghasilkan klip 30 detik. Untuk membuat klip, panggil metode interactions.create dengan perintah teks. Respons
selalu menyertakan lirik dan struktur lagu yang dihasilkan bersama dengan audio dalam
skema steps.
Python
import base64
from google import genai
client = genai.Client()
interaction = client.interactions.create(
model="lyria-3-clip-preview",
input="A short instrumental acoustic guitar piece.",
)
generated_audio = interaction.output_audio
if generated_audio:
with open("music.mp3", "wb") as f:
f.write(base64.b64decode(generated_audio.data))
lyrics = interaction.output_text
if lyrics:
print(f"Lyrics:\n{lyrics}")
JavaScript
import { GoogleGenAI } from '@google/genai';
import * as fs from 'fs';
const client = new GoogleGenAI({});
const interaction = await client.interactions.create({
model: 'lyria-3-clip-preview',
input: 'A short instrumental acoustic guitar piece.',
});
const generatedAudio = interaction.output_audio;
if (generatedAudio) {
fs.writeFileSync('music.mp3', Buffer.from(generatedAudio.data, 'base64'));
}
const lyrics = interaction.output_text;
if (lyrics) {
console.log(`Lyrics:\n${lyrics}`);
}
Java
import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ResponseModality;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;
Client client = new Client();
CreateModelInteraction params =
CreateModelInteraction.builder()
.model(Model.of("lyria-3-generate-001"))
.responseModalities(Arrays.asList(ResponseModality.AUDIO))
.input(InteractionsInput.of("Upbeat electronic synthwave track"))
.build();
Interaction interaction =
client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();
System.out.println("Audio generated: " + interaction.outputAudio().isPresent());
REST
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "Content-Type: application/json" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-d '{
"model": "lyria-3-clip-preview",
"input": "A short instrumental acoustic guitar piece."
}'
Anda dapat mengambil data musik yang dihasilkan menggunakan properti interaction.output_audio, yang menampilkan blok audio terakhir yang dihasilkan. Anda juga dapat mengambil lirik dan struktur lagu menggunakan properti interaction.output_text. Untuk mengetahui detail properti praktis, lihat
Ringkasan interaksi.
Membuat lagu berdurasi penuh
Gunakan model lyria-3.5 untuk membuat lagu berdurasi penuh yang berdurasi beberapa menit. Model Pro memahami struktur musik dan dapat membuat komposisi dengan bait, refrain, dan jembatan yang berbeda. Anda dapat memengaruhi
durasi dengan menentukannya dalam perintah (misalnya, "buat lagu berdurasi 2 menit") atau dengan
menggunakan stempel waktu untuk menentukan struktur.
Python
interaction = client.interactions.create(
model="lyria-3.5",
input="An epic cinematic orchestral piece about a journey home. Starts with a solo piano intro, builds through sweeping strings, and climaxes with a massive wall of sound.",
)
JavaScript
const interaction = await client.interactions.create({
model: 'lyria-3.5',
input: 'A beautiful piano melody.',
});
Java
import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ResponseModality;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;
Client client = new Client();
CreateModelInteraction params =
CreateModelInteraction.builder()
.model(Model.of("lyria-3-generate-001"))
.responseModalities(Arrays.asList(ResponseModality.AUDIO))
.input(InteractionsInput.of("Upbeat electronic synthwave track"))
.build();
Interaction interaction =
client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();
System.out.println("Audio generated: " + interaction.outputAudio().isPresent());
REST
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "Content-Type: application/json" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-d '{
"model": "lyria-3.5",
"input": "A beautiful piano melody."
}'
Pilih format output
Secara default, model Lyria 3.5 menghasilkan audio dalam format MP3. Untuk
Lyria 3.5, Anda juga dapat meminta output dalam format WAV dengan menyetel
response_format.
Python
interaction = client.interactions.create(
model="lyria-3.5",
input="A beautiful piano melody.",
response_format={"type": "audio"},
)
JavaScript
const interaction = await client.interactions.create({
model: 'lyria-3.5',
input: 'A beautiful piano melody.',
response_format: {
type: 'audio',
},
});
Java
import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ResponseModality;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;
Client client = new Client();
CreateModelInteraction params =
CreateModelInteraction.builder()
.model(Model.of("lyria-3-generate-001"))
.responseModalities(Arrays.asList(ResponseModality.AUDIO))
.input(InteractionsInput.of("Upbeat electronic synthwave track"))
.build();
Interaction interaction =
client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();
System.out.println("Audio generated: " + interaction.outputAudio().isPresent());
REST
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "lyria-3.5",
"input": "A beautiful piano melody.",
"response_format": {
"type": "audio"
}
}'
Mengurai respons
Respons dari Lyria 3.5 berisi beberapa blok konten dalam skema steps.
Interaksi menampilkan urutan langkah-langkah, dengan model_output langkah berisi
konten yang dihasilkan.
Blok konten teks berisi lirik yang dibuat atau deskripsi JSON dari struktur lagu.
Blok konten dengan jenis audio berisi data audio berenkode base64.
Python
lyrics = []
audio_data = None
generated_audio = interaction.output_audio
if generated_audio:
with open("output.mp3", "wb") as f:
f.write(base64.b64decode(generated_audio.data))
lyrics = interaction.output_text
if lyrics:
print(f"Lyrics:\n{lyrics}")
JavaScript
const lyrics = [];
let audioData = null;
const generatedAudio = interaction.output_audio;
if (generatedAudio) {
fs.writeFileSync("output.mp3", Buffer.from(generatedAudio.data, 'base64'));
}
const lyrics = interaction.output_text;
if (lyrics) {
console.log("Lyrics:\n" + lyrics);
}
Java
import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ResponseModality;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;
Client client = new Client();
CreateModelInteraction params =
CreateModelInteraction.builder()
.model(Model.of("lyria-3-generate-001"))
.responseModalities(Arrays.asList(ResponseModality.AUDIO))
.input(InteractionsInput.of("Upbeat electronic synthwave track"))
.build();
Interaction interaction =
client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();
System.out.println("Audio generated: " + interaction.outputAudio().isPresent());
REST
# The output from the REST API is a JSON object containing base64 encoded data.
# You can extract the text or the audio data using a tool like jq.
# To extract the audio and save it to a file:
curl ... | jq -r '.steps[] | select(.type=="model_output") | .content[] | select(.type=="audio") | .data' | base64 -d > output.mp3
Lirik dan musik yang diselingi
Karena output dari Lyria 3.5 rumit—berisi langkah-langkah dan blok terpisah untuk lirik yang dihasilkan (teks) dan lagu itu sendiri (audio)—properti praktis menawarkan pintasan yang cepat dan direkomendasikan.
Namun, jika Anda menginginkan kontrol penuh dan terprogram atas linimasa langkah-langkah mentah
yang ditampilkan oleh server (seperti mencatat setiap blok konten saat diterima), Anda dapat melakukan iterasi secara manual atas steps:
Python
lyrics = []
audio_data = None
for step in interaction.steps:
if step.type == "model_output":
for content_block in step.content:
if content_block.type == "audio":
audio_data = base64.b64decode(content_block.data)
elif content_block.type == "text":
lyrics.append(content_block.text)
if lyrics:
print("Lyrics:\n" + "\n".join(lyrics))
if audio_data:
with open("output.mp3", "wb") as f:
f.write(audio_data)
JavaScript
const lyrics = [];
let audioData = null;
for (const step of interaction.steps) {
if (step.type === 'model_output') {
for (const contentBlock of step.content) {
if (contentBlock.type === 'audio') {
audioData = Buffer.from(contentBlock.data, 'base64');
} else if (contentBlock.type === 'text') {
lyrics.push(contentBlock.text);
}
}
}
}
if (lyrics.length) {
console.log("Lyrics:\n" + lyrics.join("\n"));
}
if (audioData) {
fs.writeFileSync("output.mp3", audioData);
}
Java
import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ResponseModality;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;
Client client = new Client();
CreateModelInteraction params =
CreateModelInteraction.builder()
.model(Model.of("lyria-3-generate-001"))
.responseModalities(Arrays.asList(ResponseModality.AUDIO))
.input(InteractionsInput.of("Upbeat electronic synthwave track"))
.build();
Interaction interaction =
client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();
System.out.println("Audio generated: " + interaction.outputAudio().isPresent());
Membuat musik dari gambar
Lyria 3.5 mendukung input multimodal — Anda dapat memberikan hingga 10 gambar
bersama perintah teks Anda dalam daftar input dan model akan membuat musik
yang terinspirasi dari konten visual.
Python
import base64
with open("desert_sunset.jpg", "rb") as f:
image_bytes = f.read()
image_b64 = base64.b64encode(image_bytes).decode("utf-8")
response = client.interactions.create(
model="lyria-3.5",
input=[
{
"type": "text",
"text": "An atmospheric ambient track inspired by the mood and colors in this image.",
},
{
"type": "image",
"mime_type": "image/jpeg",
"data": image_b64,
},
],
)
JavaScript
import * as fs from "fs";
const imageBytes = fs.readFileSync("desert_sunset.jpg").toString("base64");
const interaction = await client.interactions.create({
model: "lyria-3.5",
input: [
{
type: "text",
text: "An atmospheric ambient track inspired by the mood and colors in this image.",
},
{
type: "image",
mime_type: "image/jpeg",
data: imageBytes,
},
],
});
Java
import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ResponseModality;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;
Client client = new Client();
CreateModelInteraction params =
CreateModelInteraction.builder()
.model(Model.of("lyria-3-generate-001"))
.responseModalities(Arrays.asList(ResponseModality.AUDIO))
.input(InteractionsInput.of("Upbeat electronic synthwave track"))
.build();
Interaction interaction =
client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();
System.out.println("Audio generated: " + interaction.outputAudio().isPresent());
REST
# Pass base64 encoded image data directly:
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"model": "lyria-3.5",
"input": [
{"type": "text", "text": "An atmospheric ambient track inspired by the mood and colors in this image."},
{"type": "image", "mime_type": "image/jpeg", "data": "/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAP//////////////////////////////////////////////////////////////////////////////////////wgALCAABAAEBAREA/8QAFBABAAAAAAAAAAAAAAAAAAAAAP/aAAgBAQABPxA="}
]
}'
Menyediakan lirik kustom
Anda dapat menulis lirik Anda sendiri dan menyertakannya dalam perintah. Gunakan tag bagian
seperti [Verse], [Chorus], dan [Bridge] untuk membantu model memahami
struktur lagu:
Python
prompt = """
Create a dreamy indie pop song with the following lyrics:
[Verse 1]
Walking through the neon glow,
city lights reflect below,
every shadow tells a story,
every corner, fading glory.
[Chorus]
We are the echoes in the night,
burning brighter than the light,
hold on tight, don't let me go,
we are the echoes down below.
[Verse 2]
Footsteps lost on empty streets,
rhythms sync to heartbeats,
whispers carried by the breeze,
dancing through the autumn leaves.
"""
interaction = client.interactions.create(
model="lyria-3.5",
input=prompt,
)
JavaScript
const prompt = `
Create a dreamy indie pop song with the following lyrics:
[Verse 1]
Walking through the neon glow,
city lights reflect below,
every shadow tells a story,
every corner, fading glory.
[Chorus]
We are the echoes in the night,
burning brighter than the light,
hold on tight, don't let me go,
we are the echoes down below.
[Verse 2]
Footsteps lost on empty streets,
rhythms sync to heartbeats,
whispers carried by the breeze,
dancing through the autumn leaves.
`;
const interaction = await client.interactions.create({
model: 'lyria-3.5',
input: prompt,
});
Java
import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ResponseModality;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;
Client client = new Client();
CreateModelInteraction params =
CreateModelInteraction.builder()
.model(Model.of("lyria-3-generate-001"))
.responseModalities(Arrays.asList(ResponseModality.AUDIO))
.input(InteractionsInput.of("Upbeat electronic synthwave track"))
.build();
Interaction interaction =
client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();
System.out.println("Audio generated: " + interaction.outputAudio().isPresent());
REST
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "lyria-3.5",
"input": "Create a dreamy indie pop song with the following lyrics: ..."
}'
Mengontrol waktu dan struktur
Anda dapat menentukan apa yang terjadi pada momen tertentu dalam lagu menggunakan stempel waktu. Hal ini berguna untuk mengontrol kapan instrumen masuk, kapan lirik disampaikan, dan bagaimana progres lagu:
Python
prompt = """
[0:00 - 0:10] Intro: Begin with a soft lo-fi beat and muffled
vinyl crackle.
[0:10 - 0:30] Verse 1: Add a warm Fender Rhodes piano melody
and gentle vocals singing about a rainy morning.
[0:30 - 0:50] Chorus: Full band with upbeat drums and soaring
synth leads. The lyrics are hopeful and uplifting.
[0:50 - 1:00] Outro: Fade out with the piano melody alone.
"""
interaction = client.interactions.create(
model="lyria-3.5",
input=prompt,
)
JavaScript
const prompt = `
[0:00 - 0:10] Intro: Begin with a soft lo-fi beat and muffled
vinyl crackle.
[0:10 - 0:30] Verse 1: Add a warm Fender Rhodes piano melody
and gentle vocals singing about a rainy morning.
[0:30 - 0:50] Chorus: Full band with upbeat drums and soaring
synth leads. The lyrics are hopeful and uplifting.
[0:50 - 1:00] Outro: Fade out with the piano melody alone.
`;
const interaction = await client.interactions.create({
model: 'lyria-3.5',
input: prompt,
});
Java
import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ResponseModality;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;
Client client = new Client();
CreateModelInteraction params =
CreateModelInteraction.builder()
.model(Model.of("lyria-3-generate-001"))
.responseModalities(Arrays.asList(ResponseModality.AUDIO))
.input(InteractionsInput.of("Upbeat electronic synthwave track"))
.build();
Interaction interaction =
client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();
System.out.println("Audio generated: " + interaction.outputAudio().isPresent());
REST
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "lyria-3.5",
"input": "[0:00 - 0:10] Intro: ..."
}'
Membuat trek instrumental
Untuk musik latar, soundtrack game, atau kasus penggunaan apa pun yang tidak memerlukan vokal, Anda dapat meminta model untuk menghasilkan trek khusus instrumental:
Python
interaction = client.interactions.create(
model="lyria-3-clip-preview",
input="A bright chiptune melody in C Major, retro 8-bit video game style. Instrumental only, no vocals.",
)
JavaScript
const interaction = await client.interactions.create({
model: 'lyria-3-clip-preview',
input: 'A bright chiptune melody in C Major, retro 8-bit video game style. Instrumental only, no vocals.',
});
Java
import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ResponseModality;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;
Client client = new Client();
CreateModelInteraction params =
CreateModelInteraction.builder()
.model(Model.of("lyria-3-generate-001"))
.responseModalities(Arrays.asList(ResponseModality.AUDIO))
.input(InteractionsInput.of("Upbeat electronic synthwave track"))
.build();
Interaction interaction =
client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();
System.out.println("Audio generated: " + interaction.outputAudio().isPresent());
REST
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "lyria-3-clip-preview",
"input": "A bright chiptune melody in C Major, retro 8-bit video game style. Instrumental only, no vocals."
}'
Membuat musik dalam berbagai bahasa
Lyria 3.5 membuat lirik dalam bahasa perintah Anda. Untuk membuat lagu dengan lirik dalam bahasa Prancis, tulis perintah Anda dalam bahasa Prancis. Model ini menyesuaikan gaya vokal dan pengucapannya agar sesuai dengan bahasa.
Python
interaction = client.interactions.create(
model="lyria-3.5",
input="Crée une chanson pop romantique en français sur un coucher de soleil à Paris. Utilise du piano et de la guitare acoustique.",
)
JavaScript
const interaction = await client.interactions.create({
model: 'lyria-3.5',
input: 'Crée une chanson pop romantique en français sur un coucher de soleil à Paris. Utilise du piano et de la guitare acoustique.',
});
Java
import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ResponseModality;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;
Client client = new Client();
CreateModelInteraction params =
CreateModelInteraction.builder()
.model(Model.of("lyria-3-generate-001"))
.responseModalities(Arrays.asList(ResponseModality.AUDIO))
.input(InteractionsInput.of("Upbeat electronic synthwave track"))
.build();
Interaction interaction =
client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();
System.out.println("Audio generated: " + interaction.outputAudio().isPresent());
REST
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "lyria-3.5",
"input": "Crée une chanson pop romantique en français sur un coucher de soleil à Paris. Utilise du piano et de la guitare acoustique."
}'
Kecerdasan model
Lyria 3.5 menganalisis proses perintah Anda di mana model melakukan penalaran melalui struktur musik (intro, bait, chorus, bridge, dll.) berdasarkan perintah Anda. Hal ini terjadi sebelum audio dibuat dan memastikan koherensi struktural dan musikalitas.
Panduan penulisan perintah
Perintah Anda bisa sesederhana "lagu folk tentang kucing lucu yang menghindari genangan air, vokal wanita dan suara hujan", atau sesuatu yang mendetail dan terstruktur seperti:
Lagu synth-pop bergaya 1980-an dengan beat yang kuat, synthesizer yang berkilau, dan chorus yang menarik dan anthemic. Lagu ini harus memiliki nuansa retro-futuristik, yang mengingatkan pada lagu pop klasik era 80-an, dengan sentuhan produksi modern. Tempo harus ceria dan cocok untuk menari, sekitar 120 BPM, dengan struktur bait-chorus yang jelas dan hook instrumental yang mudah diingat. Liriknya menceritakan perasaan saat bersiap-siap untuk pergi ke pesta.
Perintah sederhana dan kompleks dapat memberikan output yang baik. Bereksperimenlah dengan tips ini untuk menemukan strategi yang paling efektif untuk Anda.
Genre
Awali perintah Anda dengan genre musik yang Anda inginkan, seperti hip hop, rock, dan rap. Anda dapat menentukan campuran genre:
- Perpaduan metal dan rap
- Kombinasi death metal dan opera
- Karya klasik dengan elemen drone elektronik
- Musik dance elektronik (EDM) modern yang dipadukan dengan Europop
Anda juga dapat menyertakan era:
- Hip-hop awal 90-an
- Pop ye-ye Prancis 60-an
- Eksperimen elektronik tahun 80-an
- Pop mainstream 2000-an
Jika Anda meminta genre khusus atau varian regional, seperti "techno Berlin" atau "hyphy Bay Area", model akan mencoba menangkap esensinya, tetapi mungkin tidak selalu berhasil.
Instrumen
Secara default, Lyria 3.5 akan membuat lagu dengan instrumen dan alat yang Anda harapkan untuk genre tersebut. Anda tidak perlu bersikap preskriptif.
Namun, trek musik dance tidak akan menyertakan saksofon kecuali jika Anda memintanya. Jadi, jika Anda menginginkan solo saksofon, Anda perlu memberikan perintah:
Lagu dance dengan beat yang mengentak, synthesizer yang berkilau, dan chorus yang catchy dan anthemik. Solo saksofon harus masuk selama bagian jembatan.
Perintah Anda dapat menyertakan instrumen tertentu, suaranya, dan cara instrumen tersebut berinteraksi satu sama lain. Anda dapat menggunakan kombinasi ini untuk menciptakan suasana atau tekstur tertentu:
- Garis bass yang kotor dan terdistorsi beradu dengan hi-hat yang bersih dan jernih
- Pad synthesizer analog yang hangat mengembang di bawah gitar akustik yang jelas dan dekat
- Dinding suara yang dibuat oleh beberapa lapisan gitar fuzzy, dengan vokal yang terpendam dan jauh
Struktur lagu
Anda dapat menguraikan progres lagu dalam perintah Anda. Gunakan panah atau daftar untuk menentukan alur:
[Intro]->[Verse 1]->[Chorus]->[Verse 2]->[Chorus]->[Bridge]->[Outro]- Mulai dengan intro piano yang tenang, bangun ke bait yang keras, turun ke keheningan, lalu meledak ke bagian chorus.
Anda juga dapat menentukan bagaimana perubahan tingkat energi di antara bagian-bagian ini:
- Bangun ketegangan di pra-chorus, lalu turunkan ke keheningan sebelum chorus yang besar dan eksplosif
- Crescendo bertahap di sepanjang lagu, menambahkan satu instrumen pada satu waktu hingga menghasilkan suara yang kacau
- Berhenti mendadak setelah jembatan, diikuti dengan chorus acapella
Anda juga dapat meminta waktu yang tepat untuk melakukan sesuatu:
- Bangun hingga turun di 12 dtk
- Seseorang mengucapkan "apa" setiap 2 detik
- Bagian chorus dimulai pada detik ke-22
Lirik
Vokal dan lirik dibuat secara default. Anda dapat memberikan lirik Anda sendiri, meminta tidak ada lirik (atau instrumental), atau mengarahkan pembuatan lirik ke arah yang Anda inginkan.
Lirik Anda akan menggunakan bahasa yang Anda gunakan untuk menulis perintah. Anda juga dapat meminta lirik dalam bahasa lain, seperti "Tulis lirik dalam bahasa Prancis".
Menggunakan lirik Anda sendiri
Untuk memberikan lirik Anda sendiri kepada model, sertakan lirik tersebut dalam perintah dengan awalan "Lirik:":
Lyrics:
[Intro]
Oooh, oooh
[Verse 1]
Let's go
Let's go
Go with the flow
[Chorus]
...
Anda dapat menambahkan awalan pada bagian lagu dengan judul bagian seperti [Intro],
[Verse 1], [Pre-chorus], [Chorus], dan [Outro].
Jika Anda ingin kata atau baris diulang, seperti gema atau oleh penyanyi latar, Anda dapat menyertakannya dalam tanda kurung: "Ayo (ayo)".
Mengarahkan model untuk menulis lirik
Jika Anda ingin Lyria 3.5 membuat lirik untuk Anda, sebaiknya sertakan detail tentang isi lirik tersebut dalam perintah Anda. Jika tidak, model perlu menyimpulkan subjek dari perintah musik Anda, dan mungkin tidak sesuai dengan yang Anda inginkan.
Liriknya bercerita tentang cinta yang hilang dan rasa sakit akibat patah hati. Penyanyi ini mengenang hubungan masa lalunya dan kenangan yang kembali muncul.
Jika Anda ingin chorus yang berulang, sebaiknya minta chorus tersebut dalam perintah Anda:
Liriknya bercerita tentang cinta yang hilang dan rasa sakit akibat patah hati. Penyanyi ini mengenang hubungan masa lalunya dan kenangan yang kembali muncul. Bagian chorus yang kuat berfokus pada mengatasi rasa sakit dan melanjutkan hidup.
Lyria 3.5 akan otomatis mengarahkan struktur lirik ke jenis musik yang Anda minta, tetapi Anda juga dapat menekankan kembali hal ini dalam perintah Anda. Contoh:
Lagu EDM yang mengulang frasa energik yang sama berulang kali.
Anda juga dapat meminta efek vokal yang tidak sepenuhnya lirik, misalnya:
- Sampel berulang dari sebuah film mengatakan "Saya tidak percaya ini!" di sepanjang lagu
- Lagu techno yang penuh energi, tepat sebelum drop, semua suara berhenti dan suara kecil berkata "Aku tidak tahu apa yang kulakukan di sini", lalu musiknya drop.
- Lagu ini diawali dengan percakapan tentang film tahun 90-an yang lebih bagus daripada film saat ini. Kemudian, lagu tersebut beralih ke lagu pop.
Vokal
Anda dapat memberikan perintah tentang cara lirik akan disampaikan. Untuk hasil terbaik, tentukan profil penyanyi yang mendetail yang mencakup gender, timbre, dan rentang vokal.
- Sopran Wanita: Timbre yang jernih dan seperti kristal dengan kualitas yang lincah dan tinggi. Mampu mencapai nada tinggi yang berdesir dengan tekstur ringan dan berhembus.
- Alto Perempuan: Rentang bawah yang kaya, hangat, dan serak. Timbre berasap dengan sentuhan vocal fry, penuh jiwa dan beresonansi.
- Tenor Pria: Cerah, tajam, dan penuh semangat. Timbre muda dengan sedikit sentuhan sengau, menembus campuran dengan kekuatan belting yang tinggi.
- Bariton Pria: Dalam, seperti cokelat, dan selembut beludru. Suara dada yang beresonansi dengan penyampaian yang menenangkan dan mendayu-dayu.
- Weathered Rocker (Pria): Serak dan bertekstur dengan timbre berpasir, mengingatkan pada grunge era 90-an. Rentang atas yang tegang untuk intensitas emosional.
Parameter perintah lainnya
Anda juga dapat menyertakan parameter ini untuk lebih menyempurnakan perintah Anda:
- BPM: Setel tempo (misalnya, "120 BPM", "tempo lambat sekitar 70 BPM").
- Nada Dasar/Skala: Tentukan nada dasar musik (misalnya, "dalam G mayor", "D minor").
- Suasana dan nuansa: Gunakan kata sifat deskriptif (misalnya, "nostalgia", "agresif", "indah", "melamun").
- Durasi: Model Klip selalu menghasilkan klip berdurasi 30 detik. Untuk model Pro, tentukan durasi yang diinginkan dalam perintah Anda (misalnya, "buat lagu berdurasi 2 menit") atau gunakan stempel waktu untuk mengontrol durasi.
Contoh perintah
Berikut beberapa contoh perintah yang efektif:
"A 30-second lofi hip hop beat with dusty vinyl crackle, mellow Rhodes piano chords, a slow boom-bap drum pattern at 85 BPM, and a jazzy upright bass line. Instrumental only.""An upbeat, feel-good pop song in G major at 120 BPM with bright acoustic guitar strumming, claps, and warm vocal harmonies about a summer road trip.""A dark, atmospheric trap beat at 140 BPM with heavy 808 bass, eerie synth pads, sharp hi-hats, and a haunting vocal sample. In D minor."
Praktik terbaik
- Lakukan iterasi dengan Klip terlebih dahulu. Gunakan model
lyria-3-clip-previewyang lebih cepat untuk bereksperimen dengan perintah sebelum melakukan pembuatan panjang penuh denganlyria-3.5. - Jadilah spesifik. Perintah yang tidak jelas akan menghasilkan hasil yang umum. Sebutkan instrumen, BPM, nada dasar, mood, dan struktur untuk output terbaik.
- Cocokkan bahasa Anda. Berikan perintah dalam bahasa yang Anda inginkan untuk liriknya.
- Gunakan tag bagian. Tag
[Verse],[Chorus],[Bridge]memberikan struktur yang jelas untuk diikuti model. - Pisahkan lirik dari petunjuk. Saat memberikan lirik kustom, pisahkan dengan jelas dari petunjuk arahan musik Anda.
Batasan
- Keamanan (Safety): Semua perintah diperiksa oleh filter keamanan. Perintah yang memicu filter akan diblokir. Hal ini mencakup perintah yang meminta suara artis tertentu atau pembuatan lirik yang dilindungi hak cipta.
- Pemberian watermark: Semua audio yang dihasilkan menyertakan watermark audio SynthID untuk identifikasi. Watermark ini tidak dapat didengar oleh telinga manusia dan tidak memengaruhi pengalaman mendengarkan.
- Pengeditan berkelanjutan: Pembuatan musik adalah proses sekali putaran. Pengeditan atau penyempurnaan klip yang dihasilkan secara berulang melalui beberapa perintah tidak didukung di Lyria 3.5 versi saat ini.
- Panjang: Model Klip selalu menghasilkan klip berdurasi 30 detik. Model Pro membuat lagu berdurasi beberapa menit; durasi yang tepat dapat dipengaruhi melalui perintah Anda.
- Determinisme: Hasil dapat bervariasi antar-panggilan, bahkan dengan perintah yang sama.
Langkah berikutnya
- Periksa harga untuk model Lyria 3.5.
- Coba pembuatan musik streaming real-time dengan Lyria RealTime.
- Buat percakapan multi-pembicara dengan model TTS.
- Temukan cara membuat gambar atau video.
- Cari tahu cara Gemini dapat memahami file audio.
- Lakukan percakapan real-time dengan Gemini menggunakan Live API.