diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..e69de29 diff --git a/404.html b/404.html new file mode 100644 index 0000000..9c26bdd --- /dev/null +++ b/404.html @@ -0,0 +1,699 @@ + + + +
+ + + + + + + + + + + + + + + + +Note
+Standardizing the sharing of tools and agents is in an early experimental stage.
+How could the sharing of agents be standardized on the HF Hub?
+A good standard for sharing agents should be: modular, open, and interoperable.
+Agents have four main components:
+Modularity is a fundamental principle in software engineering. It enables maintainability, reusability, scalability, and testability. In practice, however, the code for LLM systems and agents often combines prompt strings, tool functions and the agent orchestration code in the same files. This means that changes in prompts are hard to test and version and it is harder for others to reuse prompt templates or tools for their own systems.
+Following the principle of modularity, agents should be shared in a directory of modular .yaml/.json files for prompt templates; .py files for tools; and a single agent.py file for the orchestration code.
+HF Space repositories provide a suitable unit for storing the files for prompt templates (.json or .yaml files), tools (.py files) and orchestration code (single agent.py file) in a single directory, combined with attached compute for executing the agent. One Space can contain one agent, which can be executed on a free CPU, or with high-end GPUs if required. HF Spaces can be public, private or shared with a group of people in a specific organization.
+[TODO: add example of a HF Space repo with an agent.]
+Open question: How can individual prompts and tools be made easily findable and likeable for the community, if they are only files within a repository?
+Prompts and tools can be made interoperable by breaking them down into the basic file format most libraries use: prompts in .json/.yaml files following the OAI messages format and tools in .py files with functions and doc strings. Only the orchestration code in the agent.py file is non-standardized and can use the code of any orchestration framework, calling on the modular and standardized tools and prompts.
+ + + + + + + + + + + + + + +