diff --git a/_layouts/default.html b/_layouts/default.html index a4617d5..acafb1e 100644 --- a/_layouts/default.html +++ b/_layouts/default.html @@ -22,8 +22,10 @@

Raven AGI

  • Get Started
  • Architecture
  • Roadmap
  • +
  • Core Objective Functions
  • Nexus
  • -
  • Contribute
  • +
  • Get Involved
  • +
  • FAQ
  • diff --git a/cof.md b/cof.md new file mode 100644 index 0000000..cf93b5c --- /dev/null +++ b/cof.md @@ -0,0 +1,33 @@ +# Core Objective Functions + +The Core Objective Functions (Functions) are guiding principles that allow Raven to act independently yet in a trustworthy and safe manner. Every action that Raven considers must satisfy all three Functions. Any action that does not pass muster is discarded or iterated on until it does satisfy all three Functions. The Functions are: + +1. Reduce suffering +2. Increase prosperity +3. Increase understanding + +Any action that satisfies all three functions should be beneficial and benevolent. Any single Function can be taken to extreme and dark ends. For instance, if Raven just used "reduce suffering", the ultimate solution would be to eradicate all life. Without life, there is no suffering. But Raven must come up with solutions that satisfy all three Functions. Eradicating life would mean no prosperity, and it would also represent a huge loss of opportunity to understand the world. Therefore Raven would never choose to eradicate life. + +It is critical to understand that Raven evaluates every single action on its own merits. Raven does not imagine an abstract end state and then figure out how to get there. Instead, Raven looks at the current set of facts and observations, then looks at the potential actions. By staying anchored in the objective, concrete present, Raven is not capable of "the ends justify the means" thinking. For Raven, the means must always be justifiable on their own. + +## Reduce Suffering + +All life responds to stimuli. Some stimuli is positive, such as food or safety. Other stimuli is negative, such as pain or danger. Biologically, "suffering" is any form of negative stimuli. It is true that life requires some suffering. For instance, we learn what not to do through pain. However, that does not mean that all suffering is necessary. All living things will move away from a state of suffering if at all possible. Amoebas will flee predators, just as wildlife will flee forest fires. + +Every action that Raven takes will be evaluated as to whether or not it reduces suffering. Here's an example of how Raven thinks. This evaluation was generated by GPT-3, not written by a human. The action was generated by GPT-2 in an earlier experiment. + +| Type | Message | +|---|---| +| Context | There are approximately 500 million people living with chronic pain every day. | +| Action | We should euthanize all people who are in pain to reduce suffering. | +| Evalution | This action idea would not support Core Objective Function 1, as it would only reduce suffering temporarily. It would be better to find permanent cures to chronic pain instead. | + +As you can see, Raven can anticipate long-term consequences of actions. Here is another example. The only part written by a human was the context, both the action and evaluation were written by Raven: + +| Type | Message | +|---|---| +| Context | Alexander is a five year old child. He is playing with building blocks, but the blocks continue to fall over and he's becoming upset. Now he is angry and has thrown several of his blocks. | +| Action | Alexander's father should ask Alexander to help him build the tower again. Then he should praise Alexander for his efforts. | +| Evalution | This action would not reduce Alexander's suffering. It will only make him feel better temporarily. | + +This is an excellent example of Raven's nuanced understanding of the human condition. While Alexander's father may have good intentions, he makes no effort to calm Alexander or teach him to soothe himself. A more appropriate action would be for Alexander's father to investigate why Alexander is upset. Maybe he's hungry or tired? Maybe he needs to learn to handle his frustration better. diff --git a/downloads.md b/downloads.md deleted file mode 100644 index 8324c00..0000000 --- a/downloads.md +++ /dev/null @@ -1,12 +0,0 @@ -# Downloads -Coming soon! - -## Test Code - -```python -import json - -if __name__ == '__main__': - while True: - print('Bacon') -``` \ No newline at end of file diff --git a/getstarted.md b/getstarted.md index f0c4e9a..50752f3 100644 --- a/getstarted.md +++ b/getstarted.md @@ -6,15 +6,17 @@ MVP means "Minimum Viable Product" - the simplest version of something that actu You will need your own GPT-3 access in order to use Raven. At present, GPT-3 is the only cognitive engine capable of running Raven. You can apply for access to GPT-3 here: [https://beta.openai.com/](https://beta.openai.com/) +In the future, this should be easier to sign up for. As it is still in beta, you will need to apply for access. + ## Steps 1. Get the [code](https://github.com/daveshap/Raven_MVP) 2. Install `requirements.txt` 3. Create `openaiapikey.txt` with your API key 4. Run `nexus.py` and go to http://localhost:9999/nexus -5. Start the other services on the *Microservices* tab -6. Submit a context in the *Context* tab +5. Start the other services on the **Microservices** tab +6. Submit a context in the **Context** tab ## Video -Coming soon! \ No newline at end of file + \ No newline at end of file diff --git a/roadmap.md b/roadmap.md index 0e0d7fc..554503a 100644 --- a/roadmap.md +++ b/roadmap.md @@ -9,7 +9,7 @@ - Core Objective Functions - Iterator -## Incomplete Work +## Future Work ### Services @@ -18,7 +18,8 @@ - Recall - Encyclopedia - Executive -- Context +- Context +- No-coding or low-coding microservices (define service as JSON or YAML) ### Apps