microsoft / semantic-kernel

Integrate cutting-edge LLM technology quickly and easily into your apps
https://aka.ms/semantic-kernel
MIT License
21.97k stars 3.27k forks source link

Copilot Chat: Support for multi-turn conversatsions - Can SK Copilot Chat ask for missing information for a skill as a response? #1994

Closed animeshj9 closed 1 year ago

animeshj9 commented 1 year ago

Hello Team.

Someone from my team brought this up recently. So if we write a skill that requires multiple context parameters. Would the ChatSkill or Planner be able to respond with asking for the infromation that it was not able to parse from the prompt?

Example, If I have a ADOSkill with CreateWorkItem function. And the user says - "Create a work item under area path with the description ?"

Could the chat respond with "Can you provide the 'title' for the work item?" or something similar?

Thanks, Animesh

TaoChenOSU commented 1 year ago

Hi @animeshj9,

Thanks for raising this interesting question!

The short answer is not yet.

The ChatSkill is just a conversation skill and it natively supports multi-turn conversations. For example: image

However, this is not the case for action planner and sequential planner. A plan will only be successfully created when all parameters are provided. We may be able to achieve it with the stepwise planner (https://github.com/microsoft/semantic-kernel/pull/1468) where it will prompt for input and start a new request lifecycle after the input is received. There will be additional work needed to maintain the context between the two requests.

animeshj9 commented 1 year ago

Thanks a lot @TaoChenOSU. We are planning to bring our copilot chat up to date with the samples. Will try it out and let you know once we are done porting to the latest sample.

TaoChenOSU commented 1 year ago

Thanks for letting us know!

Closing this issue. Reopen if necessary.