camel.data_collector 包

本页内容

camel.data_collector 包#

子模块#

camel.data_collector.alpaca_collector 模块#

class camel.data_collector.alpaca_collector.AlpacaDataCollector[来源]#

基类:BaseDataCollector

convert() Dict[str, Any][来源]#

将收集的数据转换为字典。

llm_convert(converter: OpenAISchemaConverter | None = None, prompt: str | None = None) Dict[str, str][来源]#

使用LLM模式转换器转换收集的数据。

Parameters:
  • converter (可选[OpenAISchemaConverter], 可选) – 要使用的转换器。(默认: OpenAISchemaConverter)

  • prompt (可选[str], optional) – 用于指导转换的提示语。 (默认值: DEFAULT_CONVERTER_PROMPTS)

Returns:

转换后的数据。

Return type:

字典[字符串, 字符串]

Raises:

ValueError - 如果没有注入代理或无法收集数据。

record(agent: List[ChatAgent] | ChatAgent) Self[来源]#

将代理注入数据收集器。

Parameters:

agent (Union[List[ChatAgent], ChatAgent]) – 要注入的代理。

camel.data_collector.base 模块#

class camel.data_collector.base.BaseDataCollector[来源]#

基类: ABC

数据收集器的基类。

abstract convert() Any[来源]#

转换收集的数据。

get_agent_history(name: str) List[CollectorData][来源]#

获取代理的消息历史记录。

Parameters:

name (str) – 代理的名称。

Returns:

代理的消息历史记录

Return type:

列表[CollectorData]

abstract llm_convert(converter: Any, prompt: str | None = None) Any[来源]#

转换收集的数据。

record(agent: List[ChatAgent] | ChatAgent) Self[来源]#

记录代理。

Parameters:

agent (Union[List[ChatAgent], ChatAgent]) – 要注入的agent(可以是单个或多个)。

property recording: bool#

收集器是否正在记录。

reset(reset_agents: bool = True)[来源]#

重置收集器。

Parameters:

reset_agents (bool, 可选) – 是否重置代理。默认为True。

start() Self[来源]#

开始录制。

step(role: Literal['user', 'assistant', 'system', 'tool'], name: str | None = None, message: str | None = None, function_call: Dict[str, Any] | None = None) Self[来源]#

录制一条消息。

Parameters:
  • role (Literal["user", "assistant", "system", "tool"]) - 消息的角色。

  • name (可选[str], optional) – 代理的名称。 (默认: None)

  • message (Optional[str], optional) – 要记录的消息。 (默认值: None)

  • function_call (可选[Dict[str, Any]], 可选) – 要记录的函数调用。(默认: None)

Returns:

数据收集器。

Return type:

自我

stop() Self[来源]#

停止录制。

class camel.data_collector.base.CollectorData(id: UUID, name: str, role: Literal['user', 'assistant', 'system', 'tool'], message: str | None = None, function_call: Dict[str, Any] | None = None)[来源]#

基类:object

static from_context(name, context: Dict[str, Any]) CollectorData[来源]#

从上下文中创建一个数据收集器。

Parameters:
  • name (str) – 代理的名称。

  • context (Dict[str, Any]) – 上下文。

Returns:

数据收集器。

Return type:

CollectorData

camel.data_collector.sharegpt_collector 模块#

class camel.data_collector.sharegpt_collector.ConversationItem(*, from_: Literal['human', 'gpt', 'function_call', 'observation'], value: str)[来源]#

基类:BaseModel

class Config[来源]#

基类:object

extra = 'forbid'#
fields: ClassVar[Dict[str, str]] = {'from_': 'from'}#
from_: Literal['human', 'gpt', 'function_call', 'observation']#
model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'fields': {'from_': 'from'}}#

模型的配置,应该是一个符合[ConfigDict][pydantic.config.ConfigDict]的字典。

value: str#
class camel.data_collector.sharegpt_collector.ShareGPTData(*, system: str, tools: str, conversations: List[ConversationItem])[来源]#

基类:BaseModel

class Config[来源]#

基类:object

extra = 'forbid'#
conversations: List[ConversationItem]#
model_config: ClassVar[ConfigDict] = {'extra': 'forbid'}#

模型的配置,应该是一个符合[ConfigDict][pydantic.config.ConfigDict]的字典。

system: str#
tools: str#
class camel.data_collector.sharegpt_collector.ShareGPTDataCollector[来源]#

基类:BaseDataCollector

convert() Dict[str, Any][来源]#

将收集的数据转换为字典。

llm_convert(converter: OpenAISchemaConverter | None = None, prompt: str | None = None) Dict[str, Any][来源]#

使用LLM模式转换器转换收集的数据。

Parameters:
  • converter (可选[OpenAISchemaConverter], 可选) – 要使用的转换器。(默认: OpenAISchemaConverter)

  • prompt (可选[str], 可选) – 用于指导转换的提示语。 (默认: DEFAULT_CONVERTER_PROMPTS)

Returns:

转换后的数据。

Return type:

字典[字符串, 字符串]

Raises:

ValueError - 如果没有注入代理或无法收集数据。

record(agent: List[ChatAgent] | ChatAgent) Self[来源]#

将代理注入数据收集器。

static to_sharegpt_conversation(data: Dict[str, Any]) ShareGPTConversation[来源]#

模块内容#

class camel.data_collector.AlpacaDataCollector[来源]#

基类:BaseDataCollector

convert() Dict[str, Any][来源]#

将收集的数据转换为字典。

llm_convert(converter: OpenAISchemaConverter | None = None, prompt: str | None = None) Dict[str, str][来源]#

使用LLM模式转换器转换收集的数据。

Parameters:
  • converter (可选[OpenAISchemaConverter], 可选) – 要使用的转换器。(默认: OpenAISchemaConverter)

  • prompt (可选[str], optional) – 用于指导转换的提示语。 (默认值: DEFAULT_CONVERTER_PROMPTS)

Returns:

转换后的数据。

Return type:

字典[字符串, 字符串]

Raises:

ValueError - 如果没有注入代理或无法收集数据。

record(agent: List[ChatAgent] | ChatAgent) Self[来源]#

将代理注入数据收集器。

Parameters:

agent (Union[List[ChatAgent], ChatAgent]) – 要注入的代理。

class camel.data_collector.BaseDataCollector[来源]#

基类: ABC

数据收集器的基类。

abstract convert() Any[来源]#

转换收集的数据。

get_agent_history(name: str) List[CollectorData][来源]#

获取代理的消息历史记录。

Parameters:

name (str) – 代理的名称。

Returns:

代理的消息历史记录

Return type:

列表[CollectorData]

abstract llm_convert(converter: Any, prompt: str | None = None) Any[来源]#

转换收集的数据。

record(agent: List[ChatAgent] | ChatAgent) Self[来源]#

记录代理。

Parameters:

agent (Union[List[ChatAgent], ChatAgent]) – 要注入的agent(s)。

property recording: bool#

收集器是否正在记录。

reset(reset_agents: bool = True)[来源]#

重置收集器。

Parameters:

reset_agents (bool, 可选) – 是否重置代理。默认为True。

start() Self[来源]#

开始录制。

step(role: Literal['user', 'assistant', 'system', 'tool'], name: str | None = None, message: str | None = None, function_call: Dict[str, Any] | None = None) Self[来源]#

录制一条消息。

Parameters:
  • role (Literal["user", "assistant", "system", "tool"]) – 消息的角色。

  • name (可选[str], 可选) – 代理的名称。 (默认: None)

  • message (Optional[str], optional) – 要记录的消息。 (默认值: None)

  • function_call (可选[Dict[str, Any]], 可选) – 要记录的函数调用。(默认: None)

Returns:

数据收集器。

Return type:

自我

stop() Self[来源]#

停止录制。

class camel.data_collector.ShareGPTDataCollector[来源]#

基类:BaseDataCollector

convert() Dict[str, Any][来源]#

将收集的数据转换为字典。

llm_convert(converter: OpenAISchemaConverter | None = None, prompt: str | None = None) Dict[str, Any][来源]#

使用LLM模式转换器转换收集的数据。

Parameters:
  • converter (可选[OpenAISchemaConverter], 可选) – 要使用的转换器。(默认: OpenAISchemaConverter)

  • prompt (可选[str], optional) – 用于指导转换的提示语。 (默认值: DEFAULT_CONVERTER_PROMPTS)

Returns:

转换后的数据。

Return type:

字典[字符串, 字符串]

Raises:

ValueError - 如果没有注入代理或无法收集数据。

record(agent: List[ChatAgent] | ChatAgent) Self[来源]#

将代理注入数据收集器。

static to_sharegpt_conversation(data: Dict[str, Any]) ShareGPTConversation[来源]#