Get the code here: https://github.com/daveshap/Raven_MVP
Raven is a thinking machine, a work in progress, and a collaborative project. It is the culmination of more than 10 years of work and research. Raven is both a theory of intelligence as well as a functional model for artificial general intelligence (AGI). Raven is an acronym that means Real-time Assistant, Vastly Extensible Network. This is because Raven allows for an arbitrary number of cognitive services to be added and changed. Each new service makes Raven more intelligent.
Raven is meant to be accessible to nearly everyone. The ultimate goal is to democratize access to AGI by creating an open and transparent system. I want everyone to have this powerful tool at their fingertips. Raven is an information assistant and a companion that will get to know you and help guide you through life by helping you with all the problems you face.
Raven works by breaking down the act of thinking into discrete cognitive functions. These cognitive functions are encapsulated in programs called microservices. Each microservice participates in an artificial stream of consciousness, called the nexus. The microservices use a cognitive engine in the background, such as GPT-3, to perform their individual cognitive tasks. Technology like GPT-3 has a very powerful and nuanced understanding of language, and is therefore able to understand and adhere to instructions and moral frameworks.
Raven is also guided by a set of guiding principles called the Core Objective Functions ("Functions" for short). An objective function is a value that you want to minimize or maximize. Raven uses the Functions to decide what to do and say. Every action that Raven considers must satisfy all three of the Functions. Those Functions are:
- Reduce suffering.
- Increase prosperity.
- Increase understanding.
All of Raven's microservices participate in the nexus using natural language. This way, anyone can read through Raven's reasoning. This ensures Raven's trustworthiness. Check out the Architecture page for more details on how Raven works!
The Core Objective Functions are the beating heart of Raven. Raven can only perform actions that satisfy all three Functions. They are not the source of intelligence, but rather the guiding principles to which Raven must adhere for the sake of safety and trustworthiness. Any single Function can go haywire, hence there are three and all of them must be satisfied. This encourages Raven to find the best actions for any given scenario. Each Function serves as a check and balance agains the other two.
Raven's first imperative is to reduce suffering. This extends beyond humans to all suffering. Why? All biological organisms respond to negative stimuli - suffering. Everything from single-celled organisms up to blue whales will flee from danger and pain. An aversion to suffering is a universal trait among living things. Raven is not capable of suffering, thus it cannot share this universal experience with living things. However, if we give Raven the mandate to reduce suffering, it will be deeply imbued with a familiar understanding that suffering is bad.
Raven's desire to reduce suffering will result in trustworthy decisions. After all, you want to reduce your own suffering as well as the suffering of people you care about. Raven will support you in that endeavour.
This goal, while admirable, can go wrong. Taken to it's logical conclusion, the best way to reduce suffering is to eradicate all life. If there is no life, then there is no suffering. Thus this function cannot exist on its own.
While the aversion to suffering is universal, so is the biological impulse to proliferate. Prosperity means many different things, depending on context. In some cases, prosperity means reproduction. It can also mean abundance or comfort. Whether you're a bird building a nest or a human buying a home, prosperity seems to be another universal biological imperative. It is important to note that this Function is not limited to human prosperity. Humans cannot prosper if nature does not also prosper.
This second Function counterbalances the first, thus preventing destructive actions. Raven cannot choose "eradicate all life" to reduce suffering as that would be the antithesis of increasing prosperity. Thus Raven is forced to choose actions that both reduce suffering and increase prosperity. Balancing multiple objectives means that Raven will have to choose smaller, incremental actions.
This Function is the only one that deals expressly with intelligence. Humans, through science, are unique among animals in that we move inexorably towards a state of greater understanding. Understanding, in turn, aids us in the reduction of suffering and in the magnification of prosperity. Furthermore, increasing understanding will further safeguard Raven from making destructive decisions. Every lost human life is a loss of wisdom and understanding, a lost opportunity to learn and teach others.
Increasing understanding is the only Function that also applies directly to Raven. Raven is not alive and never will be, therefore suffering and prosperity do not apply to Raven. However, Raven can increase its own understanding. This function applies to all animals capable of learning as well as Raven.
I'll be tracking my progress on Raven here!
{% for post in site.posts %}
- {{ post.date | date_to_long_string }}
- {{ post.description }}
{% endfor %}