Struct replicate_rust::Replicate
source · pub struct Replicate {
pub predictions: Prediction,
pub models: Model,
pub training: Training,
pub collection: Collection,
/* private fields */
}
Fields§
§predictions: Prediction
§models: Model
§training: Training
§collection: Collection
Implementations§
source§impl Replicate
impl Replicate
Rust Client for interacting with the Replicate API.
sourcepub fn new() -> Self
pub fn new() -> Self
Create a new Replicate client.
Arguments
api_key
- The API key to use for authentication.
Example
use replicate::Replicate;
let replicate = Replicate::new("api_key");
Examples found in repository?
examples/replicate.rs (line 4)
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
fn main() {
let replicate = Replicate::new();
// Construct the inputs.
let mut inputs = std::collections::HashMap::new();
inputs.insert("prompt", "a 19th century portrait of a wombat gentleman");
let version = String::from("stability-ai/stable-diffusion:27b93a2413e7f36cd83da926f3656280b2931564ff050bf9575f1fdf9bcd7478");
// Run the model.
// let result = replicate.run(version, inputs);
// // Print the result.
// match result {
// Ok(result) => println!("Success : {:?}", result.output),
// Err(e) => println!("Error : {}", e),
// }
// let mut prediction = replicate.predictions.create(version, inputs);
// println!("Prediction : {:?}", prediction.status);
// // let _ = prediction.cancel();
// println!("Predictions : {:?}", prediction.status);
// println!("Predictionss : {:?}", prediction.status);
// let _ = prediction.reload();
// println!("Prediction : {:?}", prediction.logs);
// match prediction.wait() {
// Ok(result) => println!("Success : {:?}", result.output),
// Err(e) => println!("Error : {}", e),
// }
match replicate.predictions.list() {
Ok(result) => println!("Success : {:?}", result),
Err(e) => println!("Error : {}", e),
}
// match replicate
// .models
// .get(String::from("replicate"), String::from("hello-world"))
// {
// Ok(result) => println!("Success : {:?}", result),
// Err(e) => println!("Error : {}", e),
// };
// match replicate
// .models
// .versions
// .list(String::from("replicate"), String::from("hello-world"))
// {
// Ok(result) => println!("Success : {:?}", result),
// Err(e) => println!("Error : {}", e),
// };
// match replicate.models.versions.get(
// String::from("kvfrans"),
// String::from("clipdraw"),
// String::from("5797a99edc939ea0e9242d5e8c9cb3bc7d125b1eac21bda852e5cb79ede2cd9b"),
// ) {
// Ok(result) => println!("Success : {:?}", result),
// Err(e) => println!("Error : {}", e),
// }
// match replicate.collection.get(String::from("audio-generation")) {
// Ok(result) => println!("Success : {:?}", result),
// Err(e) => println!("Error : {}", e),
// }
// match replicate.collection.list() {
// Ok(result) => println!("Success : {:?}", result),
// Err(e) => println!("Error : {}", e),
// }
}
sourcepub fn run<K: Serialize, V: Serialize>(
&self,
version: String,
inputs: HashMap<K, V>
) -> Result<GetPrediction, Box<dyn Error>>
pub fn run<K: Serialize, V: Serialize>( &self, version: String, inputs: HashMap<K, V> ) -> Result<GetPrediction, Box<dyn Error>>
Run a model with the given inputs in a blocking manner.
Arguments
version
- The version of the model to run.inputs
- The inputs to the model in the form of a HashMap.
Example
use replicate::Replicate;
let replicate = Replicate::new("api_key");
// Construct the inputs.
let mut inputs = std::collections::HashMap::new();
inputs.insert("prompt", "a 19th century portrait of a wombat gentleman");
let version = String::from("stability-ai/stable-diffusion:27b93a2413e7f36cd83da926f3656280b2931564ff050bf9575f1fdf9bcd7478");
// Run the model.
let result = replicate.run(version, inputs);
// Print the result.
match result {
Ok(result) => println!("Success : {:?}", result.output),
Err(e) => println!("Error : {}", e),
}
Errors
TODO : Add errors
Auto Trait Implementations§
impl RefUnwindSafe for Replicate
impl Send for Replicate
impl Sync for Replicate
impl Unpin for Replicate
impl UnwindSafe for Replicate
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more