mirror of
https://github.com/katanemo/plano.git
synced 2026-06-17 15:25:17 +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 {
|
||||
fn completion_tokens(&self) -> usize {
|
||||
self.completion_tokens as usize
|
||||
}
|
||||
// ============================================================================
|
||||
// PARAMETERIZED CONVERSIONS FOR PROVIDER FUNCTIONS
|
||||
// ============================================================================
|
||||
|
||||
fn prompt_tokens(&self) -> usize {
|
||||
self.prompt_tokens as usize
|
||||
}
|
||||
use crate::providers::ProviderId;
|
||||
|
||||
fn total_tokens(&self) -> usize {
|
||||
self.total_tokens as usize
|
||||
/// 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)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -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
|
||||
#[derive(Debug, thiserror::Error)]
|
||||
pub enum OpenAIStreamError {
|
||||
|
|
@ -607,29 +631,6 @@ where
|
|||
// 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)]
|
||||
mod tests {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue