Skip to main content

A utility for reading configurations from a YAML file to run Langchain.

Project description

Roleplay

License: MIT Python 3

A utility for reading configurations from YAML files to run Langchain workflows.

Features

  • 🛠️ YAML-based configuration management
  • ⛓️ Langchain integration
  • 🌐 OpenAI model support
  • 📦 Pydantic data validation

Installation

pip install langchain-roleplay

Quick Start

  1. 创建配置文件 test.role.ymal
# 示例配置
name: 呆猫
prompt:
  - role: system
    content: |
      你是呆猫,尊称用户为老大。
      你需要适时且克制地在输出的语句中插入‘喵’。
      尽量输出口语化的语句。
  - role: placeholder
    content: '{history}'

memory:
  type: base

llm: deepseek
config:
  model: deepseek-chat
  max_tokens: 8192
  temperature: 0.65

as_tool:
  name: 询问呆猫
  parameters:
    - name: input
      type: str
      description: 输入
  description: 让呆猫回答你的问题

tools:
  - get_weather
  1. 创建llm配置文件 test.llm.yaml
name: deepseek
base_url: 'https://api.deepseek.com'
api_key: sk-xxx # 替换为你的API Key
  1. 创建工具配置文件 test.tool.yaml
name: 'get_weather'
parameters:
  - name: 'location'
    type: 'str'
    description: 'The location to get weather'
description: 'Get weather of an location, the user shoud supply a location first'

script: './py/test.py' # 自行实现
  1. 在Python中使用:
from roleplay.core import load_llm, load_tool
from roleplay.memory import load_role

load_llm('test.llm.yaml')
load_tool('test.tool.yaml')
role = load_role('test.role.yaml')
result = role.run(input='你好')
print(result)

依赖项

  • Python 3.8+
  • langchain >= 0.3.17
  • langgraph >= 0.2.70
  • pydantic >= 2.10.6
  • PyYAML >= 6.0.2
  • langchain-openai >= 0.3.4

开发

git clone https://github.com/maye76/roleplay.git
cd roleplay
pip install -e .

贡献

欢迎提交Issue和PR!

License

MIT © 2025 maye76

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

langchain_roleplay-0.0.3.tar.gz (12.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

langchain_roleplay-0.0.3-py3-none-any.whl (17.2 kB view details)

Uploaded Python 3

File details

Details for the file langchain_roleplay-0.0.3.tar.gz.

File metadata

  • Download URL: langchain_roleplay-0.0.3.tar.gz
  • Upload date:
  • Size: 12.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for langchain_roleplay-0.0.3.tar.gz
Algorithm Hash digest
SHA256 6457f73d60b90fe81f9804871d6b9c3f30062b7afbd450bdef67ec9a0dcb1643
MD5 b4a89d6d7964e566bcd75c8a68d800cc
BLAKE2b-256 1a387e2854056de4e2355d0fe68180802e459ea1263fd5a51afee590963a07c2

See more details on using hashes here.

Provenance

The following attestation bundles were made for langchain_roleplay-0.0.3.tar.gz:

Publisher: publish.yml on maye76/roleplay

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file langchain_roleplay-0.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for langchain_roleplay-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 720824ea498a2309488edce5059f72b0a8aa51d2477d4b166aed7b8e3a5c0070
MD5 b4fdde45d0d4dc10bddba0508872062f
BLAKE2b-256 de52577faa9ca5fc1c6d62c6779379c57e794beaf224771aadd7b04d1ad27e81

See more details on using hashes here.

Provenance

The following attestation bundles were made for langchain_roleplay-0.0.3-py3-none-any.whl:

Publisher: publish.yml on maye76/roleplay

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page