Inspiration
Promising results, reported in the early 2010’s with Amazon’s mechanical Turk, showed how the intelligence of crowds can be integrated to software. However, Turkit, the software kit born out of these early efforts, did not have much applications beyond academia.
Independently, the advent of DAOs shows promises for decentralized, coordinated decision-making. However, current modular DAO tools, such as the DAOstack seem to have made the following, limiting design choices: • Human intelligence tasks are limited to a binary vote on proposals (yay or nay), with limited modularity regarding the aggregation procedure for votes. • Integration in software are one-off; limited to a submission of a proposal for voting and eventual call to a contract based on the result of the vote. • Submissions are made by human operators and do not make use of artificial intelligence. • The stack is limited to Web3 and does not consider e.g. Discord as part of the scope of the tooling for DAOs.
What it does
Some applications require or benefit from human intelligence (e.g. data annotation, content moderation, consumer research). This projects intends to build standardized primitives and interfaces (think OpenZeppelin) for human intelligence tasks in DAOs, and their integration in automated algorithmic flows, beyond yay/nay voting on proposals.
How we built it
Definition of terms • Human Intelligence Primitive (HIP, after TurKit): a fundamental decision problem submitted to individual members of a DAO, and an aggregation procedure for individual submissions. • Scheme (after DAOstack): A procedure performed by the machine with the output of a HIP as input, and/or a call to a HIP as output.
Challenges we ran into
The standardization and expansion of tasks requiring human intelligence can allow for the expression and rapid development of a wide-range of applications, in a unified language.
We explored the following improvements to the DAOstack and produce the corresponding tooling: • A taxonomy of interesting atomic problems for Human Intelligence Primitives. The following classical problems are considered: P1. Choice: Selecting the best alternative in a finite set. Yay/Nay is here, with a two-set. P2. Ranking: Ranking alternatives in a finite set. P3. Sorting: Assigning alternatives from a finite set to ordered classes (e.g. Good, Average, Bad). P4. Classification: Assigning alternatives from a finite set to unordered classes (e.g. Dog, Cat, Bird). P5. Search: Generating a string from an infinite set (e.g. recommend a movie to watch tonight, show me a completion hash for this tutorial). • A wider set of aggregation procedures corresponding to these problems (see the literature on Multicriteria Decision Analysis). Aggregation can be token-weighted, or one address/one vote. • Allowing for arbitrary logic and iterations between HIPs and schemes. • Extending schemes beyond a contract call. • Augmenting the stack with artificial intelligence (e.g. an AI trained on Dune Analytics identifies interesting investment opportunities and creates a proposal for the DAO to pursue them). • Extending the scope of the stack to Discord bots (e.g. Discord mod elections, an interesting product in its own right).
Accomplishments that we're proud of
It works!
What we learned
Building a community is hard.
What's next for DAOkit
Getting it adopted by DAOs. Building a community if users.
Log in or sign up for Devpost to join the conversation.