Skip to content

v4.0.7

Latest

Choose a tag to compare

@Maplemx Maplemx released this 08 Jan 13:57
· 45 commits to main since this release

Features

TriggerFlow Concurrency Control

  1. [TriggerFlow]: Global concurrency control for each execution (pass concurrency when creating execution or starting flow).
  2. [TriggerFlow]: .batch() supports concurrency control.
  3. [TriggerFlow]: .for_each() supports concurrency control.
  4. [Example]: New concurrency control example.

Python Sandbox Utility

  1. [Utils]: New Python Sandbox utility (safer isolated execution environment).

Updates

TriggerFlow

  1. [TriggerFlow]: .to() / .batch() support tuple form (name, handler) to create chunks quickly.
  2. [TriggerFlow]: Use TriggerFlow.chunk() in BaseProcess so chunks are registered properly.
  3. [TriggerFlow]: Auto-generated id for quick-created chunks.
  4. [Examples]: New TriggerFlow RESTful API + FastAPI example.
  5. [Examples]: New example for quick chunk creation.

Agent Request

  1. [Request]: Request instance adds .start() / .async_start() methods.
  2. [Request Settings]: specific supports None.
  3. [Request Settings]: auto_load_env added to .set_settings(), and core classes now use settings.set_settings uniformly.

Prompt / Configure Prompt

  1. [Prompt]: .get_yaml_prompt() / .get_json_prompt() renamed from .to_*.
  2. [Prompt]: .load_yaml_prompt() / .load_json_prompt() support Path input and key-path extraction.
  3. [Prompt]: Add encoding parameter to .load_yaml_prompt() / .load_json_prompt().
  4. [Prompt]: Fix prompt type misjudgement.
  5. [Prompt]: DataFormatter.substitute_placeholder() separated from Prompt into utils.

Debug / Developer Experience

  1. [Debug]: Console printing beautified and flushed for smoother output.
  2. [Examples]: Provide function calling & reasoning examples for specific type.
  3. [Examples]: Add uvicorn start script.

Bug Fixes

  1. [TriggerFlow]: Fix batch wait bug.
  2. [Prompt]: Ignore None in output configure prompt generation.
  3. [Prompt]: Ensure yaml.safe_dump() uses sort_keys to keep original order.
  4. [Request]: .get_result() should be sync (fixed in range).
  5. [Misc]: Fix LazyImport error causing main package import issues.
  6. [MCP]: Support MCP responses without structured_content or non-TextContent.
  7. [Auth]: Avoid sending auth when none is configured.
  8. [Compatibility]: Ensure compatibility for uncertain types like dict / dict[Any, Any].