123456789101112131415161718192021222324252627 |
- from pydantic import BaseModel, Field
- from typing import Dict, List, Literal, Optional
- class DeltaMessage(BaseModel):
- role: Optional[Literal["user", "assistant", "system"]] = None
- content: Optional[str] = None
- class Prompt(BaseModel):
- examples: List[str] = []
- instruction: str
- template: str
- action_list: List[str]
-
- def build(self):
- if self.examples:
- example_str = '\n'.join([
- f'Example #{idx}:\n{ex}' for idx, ex in enumerate(self.examples)
- ])
- return self.template(example_list=example_str, instruction=self.instruction)
- else:
- return self.template(instruction=self.instruction)
- class UserResponseStream(BaseModel):
- type: Literal["thought", "assistant", "info", "summary"] = "info"
- content: str
|