CoCoA Collaborative Communicating Agents

We build Collaborative Communicating Agents (CoCoA) that collaborate with humans to achieve a common goal through natural language communication. Each dialogue is centered around a scenario, which provides private knowledge to each agent and optional shared knowledge available to both agents. Two agents communicate using dialogue to achieve a common goal and complete a task based on information in the scenario.

Broadly, many dialogue tasks fall into this framework, for example,

  • restaurant/movie searching where the scenario contains the user preference list and a database;
  • visually grounded dialogue where the scenario contains a shared scene (image);
  • negotiation where the scenario contains terms or issues to discuss.



He He, Derek Chen, Anusha Balakrishnan, Percy Liang. Decoupling Strategy and Generation in Negotiation Dialogues. EMNLP 2018.

[Download data] [Browse] [Github Code]

The CraigslistBargain task is designed to focus on more realistic scenarios that invites richer language but at the same time requires strategic decision-making. Here, we have two agents negotiate the price of an item for sale on Craigslist.

Example dialogue

JVC HD-ILA 1080P 70 Inch TV ($275)
Tv is approximately 10 years old. Just installed new lamp. There are 2 HDMI inputs. Works and looks like new.

A: Hello
B: Hello there
A: So, are you interested in this great TV? Honestly, I barely used it and decided to sell it because I don’t really watch much TV these days. I’m selling it for $275
B: I am definitely interested in the TV, but it being 10 years old has me a bit skeptical. How does the TV look running movies and games, if you don’t mind me asking.
A: It’s full HD at 1080p and it looks great. The TV works like it is brand new. I’ll throw in a DVD player that was hooked up to it for the same price of $275
B: The DVD player sounds nice, but unfortunately I’m on somewhat of a budget. Would you be willing to drop the price a tad, maybe $230?
A: $230 is kind of low. I’ll tell ya what, if you come pick it up where it is located I’ll sell it for $260
B: Throw in a couple of movies with that DVD player,and you have yourself a deal.
A: Deal.
B: OFFER $260.00


He He, Anusha Balakrishnan, Mihail Eric, Percy Liang. Learning Symmetric Collaborative Dialogue Agents with Dynamic Knowledge Graph Embeddings. ACL 2017.

[Download data] [Browse] [Codalab worksheet] [Github Code]

Our goal is to build systems that collaborate with people by exchanging information through natural language and reasoning over structured knowledge base. In the MutualFriend task, two agents, A and B, each have a private knowledge base, which contains a list of friends with multiple attributes (e.g., name, school, major, etc.). The agents must chat with each other to find their unique mutual friend.

Example dialogue
Name School Major Company
Jessica Columbia Computer Science Google
Josh Columbia Linguistics Google

A: Hi! Most of my friends work for Google
B: do you have anyone who went to columbia?
A: Hello?
A: I have Jessica a friend of mine
A: and Josh, both went to columbia
B: or anyone working at apple?
B: SELECT (Jessica, Columbia, Computer Science, Google)
A: SELECT (Jessica, Columbia, Computer Science, Google)