Skip to content

Commit

Permalink
Updated Readme, commit various draft changes.
Browse files Browse the repository at this point in the history
  • Loading branch information
gabehamilton committed Sep 21, 2024
1 parent e750639 commit b5f4295
Show file tree
Hide file tree
Showing 6 changed files with 122 additions and 10 deletions.
26 changes: 18 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,23 @@
# ai-platform
An umbrella project for User Sovereign AI capabilities on Near Protocol

Examples, templates, and research toward layers that support User Sovereign AI.
These may be Near specific, multi-chain using Near chain abstraction, or implementations on other protocols.
## NearAI
If you are looking for the NearAI platform, you want the [near.ai](https://near.ai) website or [repo](https://github.com/nearai/nearai)

## DEMONSTRATION
This is a deprecated prototype. It demonstrates storing a directory of interrelated resources on BOS, specifically User Sovereign AI capabilities on Near Protocol.

It may be viewable [here](https://dev.near.org/near/widget/AI.Nexus) if that BOS Gateway and QueryApi are running. It relies on the following layers:
1. A BOS (Blockchain Operating System) [Gateway](https://github.com/near/near-discovery)
2. Data is stored in the [near.social](https://near.social) contract.
3. Using the Entity structure defined in QueryApi indexers and components in [near-discovery-components](https://github.com/near/near-discovery-components)
4. The Query api [entities indexer](https://dev.near.org/dataplatform.near/widget/QueryApi.App?selectedIndexerPath=dataplatform.near/entities) and [repo](https://github.com/near/queryapi)


Examples, templates, and research toward layers that support User Sovereign AI.
These may be Near specific, multi-chain using Near chain abstraction, or implementations on other protocols.

Projects may be spun out into their own repositories as they mature.

## Areas
* ./nexus/components - NEAR AI resource Nexus, React on Chain component implementation
* ./nexus/framework - Framework of NEAR Protocol Capabilities for use by AI Agents
* [./nexus/framework/trust](nexus/framework/trust) - Trust and Integrity Framework
* [./nexus/examples](nexus/examples) - Example agents that use Agent Framework capabilities
* [./nexus/components](nexus/components) - NEAR AI resource Nexus, React on Chain component implementation
* [./nexus/framework/trust](nexus/framework/trust) - Trust and Integrity Framework
* [./nexus/examples](nexus/examples) - Example agents that use Agent Framework capabilities
2 changes: 1 addition & 1 deletion nexus/components/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# AGI Guild Resource Portal (Nexus)
# NEAR AI Resource Portal (Nexus)

A portal that showcases Open Source AI Apps and Agents from across ecosystems.
4 changes: 3 additions & 1 deletion nexus/components/src/AI/Agent/AgentCustomizer.jsx
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
// Fill in all the slots of required info
// fill in your preferences
// connect up your datasources to slots
// connect up your datasources to slots: google docs, my tiktok data,

// verify: safety of api keys
// safety of information: what are LLM calls going to do with my info.
// agents can not communicate externally, so they can not leak information, or exfiltrate your data.
// this only holds true if the tools they use are safe.

// Inform user:
// see what is being sent to the server
Expand Down
12 changes: 12 additions & 0 deletions nexus/components/src/AI/Schema/Agent.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,18 @@ const genSchema = (namespace, entityType, title) => {
label: "Component",
order: 11,
},
dockerfile: {
type: "file",
inputProps: {
min: 0,
max: 1024,
placeholder: "The Dockerfile for the agent.",
required: false,
},
label: "Dockerfile",
order: 12,
},

// preferredProvider: {
// inputProps: {
// min: 2,
Expand Down
44 changes: 44 additions & 0 deletions nexus/components/src/AI/Schema/EvaluationSet.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
const { genSchema: genericGenSchema } = VM.require(
"${REPL_ACCOUNT}/widget/Entities.Template.GenericSchema",
);

const genSchema = (namespace, entityType, title) => {
const entityTitle = title ?? "Evaluation Set";

const genericSchema = genericGenSchema(namespace, entityType, entityTitle);
return {
...genericSchema,
input: {
type: "string",
inputProps: {
min: 0,
max: 1024,
placeholder: `User input submitted to the Agent`,
required: true,
},
label: "Input",
order: 10,
},
output: {
type: "string",
inputProps: {
min: 0,
max: 1024,
placeholder: `Output from the Agent`,
required: true,
},
label: "Output",
order: 11,
},
multiturn: {
type: "boolean",
inputProps: {
required: false,
},
label: "Multi-turn inputs and outputs array",
order: 12,
},
};
};

return { genSchema };
44 changes: 44 additions & 0 deletions nexus/components/src/AI/Schema/SingleEvaluation.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
const { genSchema: genericGenSchema } = VM.require(
"${REPL_ACCOUNT}/widget/Entities.Template.GenericSchema",
);

const genSchema = (namespace, entityType, title) => {
const entityTitle = title ?? "Single Evaluation";

const genericSchema = genericGenSchema(namespace, entityType, entityTitle);
return {
...genericSchema,
input: {
type: "string",
inputProps: {
min: 0,
max: 1024,
placeholder: `User input submitted to the Agent`,
required: true,
},
label: "Input",
order: 10,
},
output: {
type: "string",
inputProps: {
min: 0,
max: 1024,
placeholder: `Output from the Agent`,
required: true,
},
label: "Output",
order: 11,
},
multiturn: {
type: "boolean",
inputProps: {
required: false,
},
label: "Multi-turn inputs and outputs array",
order: 12,
},
};
};

return { genSchema };

0 comments on commit b5f4295

Please sign in to comment.