mirror of
https://github.com/katanemo/plano.git
synced 2026-06-20 15:28:07 +02:00
some more clean-up
This commit is contained in:
parent
3e107d935b
commit
e503934df2
1 changed files with 34 additions and 33 deletions
|
|
@ -490,18 +490,27 @@ impl ProviderResponse for ChatCompletionsResponse {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Implementation of TokenUsage for OpenAI Usage type
|
// ============================================================================
|
||||||
impl TokenUsage for Usage {
|
// PARAMETERIZED CONVERSIONS FOR PROVIDER FUNCTIONS
|
||||||
fn completion_tokens(&self) -> usize {
|
// ============================================================================
|
||||||
self.completion_tokens as usize
|
|
||||||
}
|
|
||||||
|
|
||||||
fn prompt_tokens(&self) -> usize {
|
use crate::providers::ProviderId;
|
||||||
self.prompt_tokens as usize
|
|
||||||
}
|
|
||||||
|
|
||||||
fn total_tokens(&self) -> usize {
|
/// Parameterized conversion for ChatCompletionsRequest
|
||||||
self.total_tokens as usize
|
impl TryFrom<(&[u8], &ProviderId)> for ChatCompletionsRequest {
|
||||||
|
type Error = OpenAIStreamError;
|
||||||
|
|
||||||
|
fn try_from((bytes, _provider_id): (&[u8], &ProviderId)) -> Result<Self, Self::Error> {
|
||||||
|
serde_json::from_slice(bytes).map_err(OpenAIStreamError::from)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Parameterized conversion for ChatCompletionsResponse
|
||||||
|
impl TryFrom<(&[u8], &ProviderId)> for ChatCompletionsResponse {
|
||||||
|
type Error = OpenAIStreamError;
|
||||||
|
|
||||||
|
fn try_from((bytes, _provider_id): (&[u8], &ProviderId)) -> Result<Self, Self::Error> {
|
||||||
|
serde_json::from_slice(bytes).map_err(OpenAIStreamError::from)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -532,6 +541,21 @@ impl ProviderStreamResponse for ChatCompletionsStreamResponse {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Implementation of TokenUsage for OpenAI Usage type
|
||||||
|
impl TokenUsage for Usage {
|
||||||
|
fn completion_tokens(&self) -> usize {
|
||||||
|
self.completion_tokens as usize
|
||||||
|
}
|
||||||
|
|
||||||
|
fn prompt_tokens(&self) -> usize {
|
||||||
|
self.prompt_tokens as usize
|
||||||
|
}
|
||||||
|
|
||||||
|
fn total_tokens(&self) -> usize {
|
||||||
|
self.total_tokens as usize
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Error type for streaming operations
|
// Error type for streaming operations
|
||||||
#[derive(Debug, thiserror::Error)]
|
#[derive(Debug, thiserror::Error)]
|
||||||
pub enum OpenAIStreamError {
|
pub enum OpenAIStreamError {
|
||||||
|
|
@ -607,29 +631,6 @@ where
|
||||||
// Just marking that this type implements the trait - no additional methods needed
|
// Just marking that this type implements the trait - no additional methods needed
|
||||||
}
|
}
|
||||||
|
|
||||||
// ============================================================================
|
|
||||||
// PARAMETERIZED CONVERSIONS FOR PROVIDER FUNCTIONS
|
|
||||||
// ============================================================================
|
|
||||||
|
|
||||||
use crate::providers::ProviderId;
|
|
||||||
|
|
||||||
/// Parameterized conversion for ChatCompletionsRequest
|
|
||||||
impl TryFrom<(&[u8], &ProviderId)> for ChatCompletionsRequest {
|
|
||||||
type Error = OpenAIStreamError;
|
|
||||||
|
|
||||||
fn try_from((bytes, _provider_id): (&[u8], &ProviderId)) -> Result<Self, Self::Error> {
|
|
||||||
serde_json::from_slice(bytes).map_err(OpenAIStreamError::from)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Parameterized conversion for ChatCompletionsResponse
|
|
||||||
impl TryFrom<(&[u8], &ProviderId)> for ChatCompletionsResponse {
|
|
||||||
type Error = OpenAIStreamError;
|
|
||||||
|
|
||||||
fn try_from((bytes, _provider_id): (&[u8], &ProviderId)) -> Result<Self, Self::Error> {
|
|
||||||
serde_json::from_slice(bytes).map_err(OpenAIStreamError::from)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
mod tests {
|
mod tests {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue