kernelx_core/capabilities/
imagen.rs

1use crate::{capabilities::HasCapability, models::ModelConfig, Result};
2use async_trait::async_trait;
3
4#[async_trait]
5pub trait ImageGen: HasCapability {
6    async fn generate_image(&self, prompt: &str) -> Result<String> {
7        self.image_gen_impl(self.model_id(), prompt, self.config())
8            .await
9    }
10
11    #[doc(hidden)]
12    async fn image_gen_impl(
13        &self,
14        model: &str,
15        prompt: &str,
16        config: &ModelConfig,
17    ) -> Result<String>;
18}