Overview of Wizard GPT
mainaiconfig to manage system prompts, dynamic prompt generation, and conversation persistence.repository·main·Indexed 22 days ago
https://github.com/lastmile-ai/aiconfigAn open-source framework for building production-grade generative AI applications by separating prompts, models, and parameters from application code into version-controllable JSON configurations. It supports integrations with Anyscale Endpoints, OpenAI, and HuggingFace, and provides patterns for prompt routing, Chain-of-Verification (CoVe), function calling, and safety classification using LLaMA Guard.
aiconfig to manage system prompts, dynamic prompt generation, and conversation persistence.AIConfig is a system for saving prompts, models, and model parameters as source-control-friendly configurations. It decouples generative AI settings from application code, allowing for independent iteration on prompts and model parameters.
Key components include:
aiconfig with any generative AI model (text, image, or audio).aiconfig files, running prompts, and chaining tasks.AIConfig is a source-control friendly framework for managing generative AI prompts, models, and model parameters as configuration files. It decouples AI behavior from application code, allowing developers to iterate on prompts and models independently of the core software logic.
config.run() via the SDK.aiconfig is a standardized JSON artifact, it can be version-controlled to ensure reproducibility, provenance, and easier evaluation of AI behavior.Cli-Mate is a tool built using AIConfig designed to create custom CLI chat bots. While it can function as a general-purpose chatbot, its primary use case is interactive code modification.
Key features include:
Gradio Notebooks is a notebook component for generative AI designed to create Hugging Face Spaces quickly (in under 10 lines of code). It provides a familiar, Jupyter-inspired interface for interacting with multimodal models (text, image, audio) in a single space.
Key capabilities include:
aiconfig.json files to be used in production applications via the AIConfig SDK.AIConfig provides a variety of cookbooks in its repository that demonstrate specific implementation patterns and capabilities. These examples serve as templates for building complex AI-driven applications.
Available patterns include:
Wizard GPT or code-modification assistants like CLI-mate.ChromaDB or MongoDB Vector Search.OpenAI function calling example.Chain of Verification (CoVe) to reduce hallucinations.LLaMA2, Hugging Face (Mistral-7B), and Google PaLM with the AIConfig framework.Projects are evaluated based on the following criteria:
README.md must clearly explain the project's purpose, mechanics, and how AIConfig/workbooks are utilized.AIConfig is a system designed to decouple generative AI settings from application code. It provides:
aiconfig files, run prompts, and chain tasks without writing application code.{{handlebars}} syntax to pass dynamic data between prompts and allow parameterization.AIConfigRuntime object is the primary interface for interacting with AIConfig programmatically. It provides the methods necessary to perform CRUD operations on prompts, models, parameters, and metadata, and serves as the engine for running inference and managing prompt dependencies.The AIConfig Editor is a UI layer for the AIConfig JSON/YAML schema.
Core Workflow:
python-aiconfig pip package in your Python environment.*.aiconfig.yaml file, the extension launches a Python server running the AIConfig SDK.If your model needs to handle prompts with placeholders (using handlebar syntax like {{variable}}), inherit from ParameterizedModelParser instead of the base ModelParser. This subclass provides built-in support for resolving these placeholders during the serialization and deserialization process.
Additional capabilities of ParameterizedModelParser:
run_with_dependencies: Allows executing prompts with resolved dependencies and prompt references.Helper methods provided by ParameterizedModelParser:
resolve_prompt_template() (Python/TS): Resolves a templated string with provided parameters.get_prompt_template() (Python/TS): An overrideable method to specify how templates are extracted from prompts.Prompts are the primary building blocks of an aiconfig. They store inputs, optional outputs, and prompt-specific metadata.
| Property | Requirement | Description |
|---|---|---|
name | Required | A unique identifier used to reference the prompt in the SDK or other prompts. |
input | Required | The model input. Can be a string or a complex object (e.g., for multi-modal inputs). |
metadata | Optional | Prompt-specific settings. These are merged with root metadata, but prompt-level values take precedence. |
outputs | Optional | An array of previous inference results (cached outputs). |
The input field supports two main forms:
ModelParser may use keys like data or specific MIME types to interpret the object.type PromptInput =
| {
/**
* Input to the model. The structure is up to the ModelParser.
*/
data?: JSONValue;
[k: string]: any;
}
| string;