-
Notifications
You must be signed in to change notification settings - Fork 947
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BatchEngine] Chat group poc with batch engine, chat group orchestrator changes #2360
Conversation
2ee18aa
to
5e5fc0a
Compare
src/promptflow/promptflow/batch/_chat_group_orchestrator_proxy.py
Outdated
Show resolved
Hide resolved
src/promptflow/promptflow/orchestrator/_chat_group_orchestrator.py
Outdated
Show resolved
Hide resolved
5e5fc0a
to
82d0fda
Compare
Refine code init orchestrator when create orchestrator proxy resolve conflict and refine code using executor proxy factory resolve confict and refine fix test implement orchestrator Refine code to use proxy factory Add a python single line proxy and e2e test refine code to use current interface and add e2e test fix register executor proxy in test move chat group contract to seperated file and refine refine Use proxy property Pass chat group proxy directly update test remove useless parameter update
e2985bc
to
93abff7
Compare
93abff7
to
60e770f
Compare
SDK CLI Global Config Test Result bixiaodi/chat_group_contract3 tests 3 ✅ 45s ⏱️ Results for commit 60e770f. |
Executor Unit Test Result bixiaodi/chat_group_contract743 tests 741 ✅ 3m 43s ⏱️ For more details on these errors, see this check. Results for commit 60e770f. |
Executor E2E Test Result bixiaodi/chat_group_contract219 tests 212 ✅ 5m 3s ⏱️ For more details on these failures, see this check. Results for commit 60e770f. |
from promptflow.storage._run_storage import AbstractRunStorage | ||
|
||
|
||
class ChatGroupOrchestratorProxy(AbstractExecutorProxy): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add this class in promptflow._internal? Because runtime needs to import it.
from promptflow._sdk.entities._run import Run | ||
from promptflow._sdk.operations._local_storage_operations import LocalStorageOperations | ||
from promptflow._utils.utils import dump_list_to_jsonl | ||
from promptflow.batch._batch_engine import BatchEngine | ||
from promptflow.batch._errors import EmptyInputsData | ||
from promptflow.batch._result import BatchResult | ||
from promptflow._proxy._single_line_python_executor_proxy import SingleLinePythonExecutorProxy | ||
from promptflow._proxy._chat_group_orchestrator_proxy import ChatGroupOrchestratorProxy | ||
from promptflow._sdk.entities._chat_group._chat_role import ChatRole |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please also include this in the promptflow_internal? Because runtime needs to import it.
stop_signal: Optional[str] = None, | ||
flow_file: Optional[Path] = None, | ||
working_dir: Optional[Path] = None, | ||
connections: Optional[Dict[str, Any]] = None, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we need to send environment variable here?
Description
Add a chat group proxy to support chat group scenario.

Chat group proxy will be passed directly to batch engine. All the executor proxy will be created when initialize chat group proxy.
Chat group orchestrator schedule flow runs and resolve flow inputs and outputs for each run.
All Promptflow Contribution checklist:
General Guidelines and Best Practices
Testing Guidelines