pub struct ParametersBuilder { /* private fields */ }
Expand description
Builder for Parameters
.
Implementations§
Source§impl ParametersBuilder
impl ParametersBuilder
Sourcepub fn result_format<VALUE: Into<String>>(&mut self, value: VALUE) -> &mut Self
pub fn result_format<VALUE: Into<String>>(&mut self, value: VALUE) -> &mut Self
Examples found in repository?
examples/text-generation.rs (line 20)
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
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let request = GenerationParamBuilder::default()
.model("qwen-turbo".to_string())
.input(
InputBuilder::default()
.messages(vec![MessageBuilder::default()
.role("user")
.content("你是谁")
.build()
.unwrap()])
.build()?,
)
.parameters(
ParametersBuilder::default()
.result_format("message")
.build()?,
)
.build()?;
let client = Client::new();
let response = client.generation().call(request).await?;
dbg!(response);
Ok(())
}
More examples
examples/text-generation-stream.rs (line 22)
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
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let request = GenerationParamBuilder::default()
.model("qwen-turbo".to_string())
.input(
InputBuilder::default()
.messages(vec![MessageBuilder::default()
.role("user")
.content("qwen 大模型系统是谁开发的?")
.build()
.unwrap()])
.build()?,
)
.stream(true)
.parameters(
ParametersBuilder::default()
.result_format("message")
.incremental_output(true)
.build()?,
)
.build()?;
let client = Client::new();
let mut stream = client.generation().call_stream(request).await?;
while let Some(response) = stream.next().await {
match response {
Ok(go) => go.output.choices.iter().for_each(|c| {
print!("{}", c.message.content);
}),
Err(e) => eprintln!("{}", e),
}
}
Ok(())
}
Sourcepub fn translation_options(&mut self, value: TranslationOptions) -> &mut Self
pub fn translation_options(&mut self, value: TranslationOptions) -> &mut Self
Examples found in repository?
examples/qwen-mt.rs (lines 20-25)
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
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let request = GenerationParamBuilder::default()
.model("qwen-mt-turbo".to_string())
.input(
InputBuilder::default()
.messages(vec![MessageBuilder::default()
.role("user")
.content("我看到这个视频后没有笑")
.build()
.unwrap()])
.build()?,
)
.parameters(
ParametersBuilder::default()
.translation_options(
TranslationOptionsBuilder::default()
.source_lang("Chinese")
.target_lang("English")
.build()?,
)
.build()?,
)
.build()?;
let client = Client::new();
let response = client.generation().call(request).await?;
dbg!(response);
Ok(())
}
More examples
examples/qwen-mt-stream.rs (lines 23-28)
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
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let request = GenerationParamBuilder::default()
.model("qwen-mt-turbo".to_string())
.input(
InputBuilder::default()
.messages(vec![MessageBuilder::default()
.role("user")
.content("我看到这个视频后没有笑")
.build()
.unwrap()])
.build()?,
)
.stream(true)
.parameters(
ParametersBuilder::default()
// .incremental_output(true) # Qwen-MT模型暂时不支持增量式流式输出,所以此设置无效
.translation_options(
TranslationOptionsBuilder::default()
.source_lang("Chinese")
.target_lang("English")
.build()?,
)
.build()?,
)
.build()?;
let client = Client::new();
let mut stream = client.generation().call_stream(request).await?;
while let Some(response) = stream.next().await {
match response {
Ok(go) => go.output.choices.iter().for_each(|c| {
println!("{}", c.message.content);
}),
Err(e) => eprintln!("{}", e),
}
}
Ok(())
}
Sourcepub fn incremental_output<VALUE: Into<bool>>(
&mut self,
value: VALUE,
) -> &mut Self
pub fn incremental_output<VALUE: Into<bool>>( &mut self, value: VALUE, ) -> &mut Self
Examples found in repository?
examples/text-generation-stream.rs (line 23)
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
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let request = GenerationParamBuilder::default()
.model("qwen-turbo".to_string())
.input(
InputBuilder::default()
.messages(vec![MessageBuilder::default()
.role("user")
.content("qwen 大模型系统是谁开发的?")
.build()
.unwrap()])
.build()?,
)
.stream(true)
.parameters(
ParametersBuilder::default()
.result_format("message")
.incremental_output(true)
.build()?,
)
.build()?;
let client = Client::new();
let mut stream = client.generation().call_stream(request).await?;
while let Some(response) = stream.next().await {
match response {
Ok(go) => go.output.choices.iter().for_each(|c| {
print!("{}", c.message.content);
}),
Err(e) => eprintln!("{}", e),
}
}
Ok(())
}
Sourcepub fn build(&self) -> Result<Parameters, ParametersBuilderError>
pub fn build(&self) -> Result<Parameters, ParametersBuilderError>
Examples found in repository?
examples/text-generation.rs (line 21)
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
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let request = GenerationParamBuilder::default()
.model("qwen-turbo".to_string())
.input(
InputBuilder::default()
.messages(vec![MessageBuilder::default()
.role("user")
.content("你是谁")
.build()
.unwrap()])
.build()?,
)
.parameters(
ParametersBuilder::default()
.result_format("message")
.build()?,
)
.build()?;
let client = Client::new();
let response = client.generation().call(request).await?;
dbg!(response);
Ok(())
}
More examples
examples/qwen-mt.rs (line 26)
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
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let request = GenerationParamBuilder::default()
.model("qwen-mt-turbo".to_string())
.input(
InputBuilder::default()
.messages(vec![MessageBuilder::default()
.role("user")
.content("我看到这个视频后没有笑")
.build()
.unwrap()])
.build()?,
)
.parameters(
ParametersBuilder::default()
.translation_options(
TranslationOptionsBuilder::default()
.source_lang("Chinese")
.target_lang("English")
.build()?,
)
.build()?,
)
.build()?;
let client = Client::new();
let response = client.generation().call(request).await?;
dbg!(response);
Ok(())
}
examples/text-generation-stream.rs (line 24)
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
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let request = GenerationParamBuilder::default()
.model("qwen-turbo".to_string())
.input(
InputBuilder::default()
.messages(vec![MessageBuilder::default()
.role("user")
.content("qwen 大模型系统是谁开发的?")
.build()
.unwrap()])
.build()?,
)
.stream(true)
.parameters(
ParametersBuilder::default()
.result_format("message")
.incremental_output(true)
.build()?,
)
.build()?;
let client = Client::new();
let mut stream = client.generation().call_stream(request).await?;
while let Some(response) = stream.next().await {
match response {
Ok(go) => go.output.choices.iter().for_each(|c| {
print!("{}", c.message.content);
}),
Err(e) => eprintln!("{}", e),
}
}
Ok(())
}
examples/qwen-mt-stream.rs (line 29)
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
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let request = GenerationParamBuilder::default()
.model("qwen-mt-turbo".to_string())
.input(
InputBuilder::default()
.messages(vec![MessageBuilder::default()
.role("user")
.content("我看到这个视频后没有笑")
.build()
.unwrap()])
.build()?,
)
.stream(true)
.parameters(
ParametersBuilder::default()
// .incremental_output(true) # Qwen-MT模型暂时不支持增量式流式输出,所以此设置无效
.translation_options(
TranslationOptionsBuilder::default()
.source_lang("Chinese")
.target_lang("English")
.build()?,
)
.build()?,
)
.build()?;
let client = Client::new();
let mut stream = client.generation().call_stream(request).await?;
while let Some(response) = stream.next().await {
match response {
Ok(go) => go.output.choices.iter().for_each(|c| {
println!("{}", c.message.content);
}),
Err(e) => eprintln!("{}", e),
}
}
Ok(())
}
Trait Implementations§
Source§impl Clone for ParametersBuilder
impl Clone for ParametersBuilder
Source§fn clone(&self) -> ParametersBuilder
fn clone(&self) -> ParametersBuilder
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreAuto Trait Implementations§
impl Freeze for ParametersBuilder
impl RefUnwindSafe for ParametersBuilder
impl Send for ParametersBuilder
impl Sync for ParametersBuilder
impl Unpin for ParametersBuilder
impl UnwindSafe for ParametersBuilder
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