modelscope / agentscope

Start building LLM-empowered multi-agent applications in an easier way.
https://doc.agentscope.io/
Apache License 2.0
4.8k stars 294 forks source link

third-party agents #390

Open HaifengWkkk opened 1 month ago

HaifengWkkk commented 1 month ago

AgentScope is an open-source project. To involve a broader community, we recommend asking your questions in English. Well job! I was wondering if third-party intelligences can access this framework, and if not why?

bg4xsd commented 1 month ago

Having several intelligent agents from AgentScope and other third-party agents communicating with each other is an exciting idea. Before continuing the discussion, we need to clarify a few things. What language do these agents speak (information and coding formats)? What communication method do they use (API? UDP network service? RPC)? MessageQueue?) This is a more interesting question, does AgentScope require electing a role as a liaison person?

pan-x-c commented 1 month ago

As a multi-agent platform, AgentScope can use third-party agents by implementing a sub-class of AgentBase and using the third-party agent in the reply method. Additionally, AgentScope already has an RPC-based distributed mode, agents can be deployed on multiple machines, please refer to tutorial.

bg4xsd commented 1 month ago

Roger that, Thanks.

DavdGao commented 1 month ago

AgentScope is an open-source project. To involve a broader community, we recommend asking your questions in English. Well job! I was wondering if third-party intelligences can access this framework, and if not why?

Thansk for your attention. I think it's technically feasible. If your target is only to enable the communication between different agents, just unify the messages passed among different agents, just like an unified interface (e.g. the Msg class in AgentScope).

If you want to use the other features within AgentScope, e.g. distribution, you can wrap the third-party agent within a new agent class that inherits agentscope.agents.AgentBase

DavdGao commented 1 month ago

Refer to this example for the second case, which integrates langchain within agentscope agent https://github.com/modelscope/agentscope/tree/main/examples/conversation_with_langchain

HaifengWkkk commented 1 month ago

AgentScope is an open-source project. To involve a broader community, we recommend asking your questions in English. Well job! I was wondering if third-party intelligences can access this framework, and if not why?

Thansk for your attention. I think it's technically feasible. If your target is only to enable the communication between different agents, just unify the messages passed among different agents, just like an unified interface (e.g. the Msg class in AgentScope).

If you want to use the other features within AgentScope, e.g. distribution, you can wrap the third-party agent within a new agent class that inherits agentscope.agents.AgentBase

I understand that communication is easy to implement, but to allow third-party intelligences to use the functionality within the framework would require a rewrite?

HaifengWkkk commented 1 month ago

Having several intelligent agents from AgentScope and other third-party agents communicating with each other is an exciting idea. Before continuing the discussion, we need to clarify a few things. What language do these agents speak (information and coding formats)? What communication method do they use (API? UDP network service? RPC)? MessageQueue?) This is a more interesting question, does AgentScope require electing a role as a liaison person?

How to understand message queues?Is Langgraph's Message Pooling a good choice?

DavdGao commented 1 month ago

I understand that communication is easy to implement, but to allow third-party intelligences to use the functionality within the framework would require a rewrite?

I think it is.