musicgpt 0.3.27

Generate music based on natural language prompts using LLMs running locally
mod audio;
mod backend;
mod cli;
mod gpu;
mod musicgen;
mod musicgen_models;
mod onnxruntime_lib;
mod storage;
mod storage_ext;
mod terminal;

use log::error;
use std::process::exit;
use tracing_subscriber::fmt::time::UtcTime;
use tracing_subscriber::{fmt, EnvFilter};


#[tokio::main]
async fn main() {
    let time_format = time::format_description::parse(
        "[year]-[month]-[day] [hour]:[minute]:[second].[subsecond digits:3]",
    )
    .expect("Failed to create timestamp format");
    let format = fmt::format()
        .with_target(false)
        .with_timer(UtcTime::new(time_format));
    let filter = EnvFilter::new("info,ort=off");

    tracing_subscriber::fmt()
        .event_format(format)
        .with_max_level(tracing::Level::INFO)
        .with_env_filter(filter)
        .init();
    if let Err(err) = cli::cli().await {
        error!("{err}");
        exit(1)
    }
}