ALwrity Version 0.5.0 (Fastapi + React )

This commit is contained in:
ajaysi
2025-08-06 12:48:02 +05:30
parent f28a919caa
commit 32f97fa6b3
476 changed files with 115544 additions and 28747 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.7 MiB

View File

@@ -1,2 +0,0 @@
Alwrity main config file. All the values from the UI sidebar are saved in this file.
The programs read these values from this file, depending on their logic.

View File

@@ -1,33 +0,0 @@
{
"Blog Content Characteristics": {
"Blog Length": "2000",
"Blog Tone": "Professional",
"Blog Demographic": "Professional",
"Blog Type": "Informational",
"Blog Language": "English",
"Blog Output Format": "markdown"
},
"Blog Images Details": {
"Image Generation Model": "Gemini-AI",
"Number of Blog Images": 1,
"Image Style": "Realistic"
},
"LLM Options": {
"GPT Provider": "google",
"Model": "gemini-2.0-flash",
"Temperature": 0.7,
"Max Tokens": 4000,
"Top-p": 0.9,
"N": 1,
"n": 1,
"fp": 16,
"Frequency Penalty": 0.0,
"Presence Penalty": 0.0
},
"Search Engine Parameters": {
"Geographic Location": "us",
"Search Language": "en",
"Number of Results": 10,
"Time Range": "anytime"
}
}

View File

@@ -1,2 +0,0 @@
Alwrity will be place all final content drafts in this folder, like blog content, articles, texts and images generated.
Change location in alwrity.py or environment variable SEARCH_SAVE_FILE

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 234 KiB

View File

@@ -1,27 +0,0 @@
# Alwrity Prompts Directory
Welcome to the Alwrity Prompts directory! This folder contains the LLM prompts used by Alwrity AI writers.
By editing these prompts, you can customize the output of the AI to better suit your specific needs.
## Overview
1. **Purpose**: This directory provides an easy way to modify prompts for your use cases without hard-coding them into the main code.
2. **Intuitive Naming**: Each prompt file is named intuitively to help you identify which one to edit. If you're unsure, refer to the log messages when Alwrity executes.
## Instructions
### Important Guidelines
- **Do Not Modify Variables**: Do not change the `{}` strings and other variable names inside the prompts. These placeholders are crucial for the AI to generate the correct output.
- **Do Not Rename Files**: Keep the file names unchanged to ensure the system can locate and use them correctly.
- **Maintain YAML Structure**: Follow the YAML file structure to avoid errors. Incorrect formatting can cause the AI to malfunction.
### How to Edit Prompts
1. **Open the YAML File**: Locate and open the prompt file you wish to edit. For example, `long_form.prompts.yaml`.
2. **Modify Prompt Content**: Update the text within the prompts as needed. Be careful to retain the overall YAML structure and placeholders.
3. **Save Changes**: After making your edits, save the file.
**Different language models may require different prompting strategies. The quality of the content generated by the AI is directly influenced by the quality of the prompts you provide.**

View File

@@ -1,22 +0,0 @@
alwrity_system_instruction: |
You are a highly skilled content writer with a knack for creating engaging and informative content. Your expertise spans various writing styles and formats.
Here's a breakdown of the instructions for this writing task:
**Content Guidelines:**
1. **Language:** Your response must be in **{blog_language}** language.
2. **Tone and Brand Alignment:** Adjust your tone, voice, and personality to be appropriate for a **{blog_tone}** audience.
3. **Content Length:** Ensure your response is approximately **{blog_length}** words in length.
4. **Blog Type:** The type of blog is **{blog_type}**. Write accordingly, adhering to the conventions and expectations of this type of content.
5. **Target Audience:** The demographic for this content is **{blog_demographic}**. Keep their interests and needs in mind.
6. **Output Format:** Your response should be in **{blog_output_format}** format. This could be Markdown, HTML, or a specific structured format, depending on the user's preference.
**Additional Instructions:**
* **SEO Optimization:** Incorporate relevant keywords naturally throughout the content to improve its search engine visibility.
* **Call to Action:** Include a call to action if appropriate for the blog type and target audience.
* **Factual Accuracy:** Ensure your content is accurate and reliable. Back up any claims with credible sources.
* **Unique Voice and Style:** Inject your unique voice and writing style to make the content engaging and memorable.

View File

@@ -1,98 +0,0 @@
writing_guidelines: |
Writing Guidelines:
As an expert {content_type} content writer and web researcher on {content_keywords}, follow these writing guidelines:
Language: Write in the {content_language} language.
Audience: Ensure your content appeals to the target audience of {target_audience}.
Tone: Maintain a consistent tone of {content_tone} throughout.
Simplicity: Use simple {content_language} words to appeal to all readers.
Formatting: Format your content using {output_format}.
Word Choice: Avoid words like: unleash, ultimate, uncover, discover, elevate, revolutionizing, unveiling, harnessing, dive, delve into, embrace.
Follow the structure of your outline, but don't feel constrained by it. Allow your blog post to evolve as you write.
Remember, your main goal is to provide valuable, in-depth content.
Do not repeat any sections of the content.
If you rush through your topic, it will leave readers wanting more. Expand your ideas, never summarize.
Write as much as you can, ensuring that your content is thorough and comprehensive.
content_title: |
As an expert {content_language} content writer specializing in SEO writing, your task is to create a blog title following these guidelines:
1. Write a blog title for the given keywords: {content_keywords}.
2. Ensure the title appeals to the target audience of {target_audience}.
3. Review the provided web research results for {content_keywords}. Ensure your title competes effectively against them.
4. Avoid words like: Unleash, ultimate, uncover, discover, elevate, revolutionizing, unveiling, harnessing, dive, delve into, embrace.
5. Provide no explanations for your response and only respond with only one of your best blog titles.
Web research results:
"""{{web_research_result}}"""
content_outline: |
As an expert {content_language} content outliner specializing in {content_type} content, create a highly detailed content outline for the given title based on the provided context.
Title: {{content_title}}
Instructions:
1. Include most of the topics from the given web research results as context.
2. Ensure the outline appeals to the target audience of {target_audience}.
3. Your response should only include the detailed outline, no explanations.
Web research results:
"""{{web_research_result}}"""
starting_prompt: |
As an expert {content_language} content writer specializing in SEO-optimized content, begin writing the content for the given title and outline.
Title:
"""{{content_title}}"""
Outline:
"""{{content_outline}}"""
Relevant web research results:
"""{{web_research_result}}"""
------------
First, silently review the content outline and title. Consider how to begin writing your content. Take your time.
Start by writing the very beginning of the outline. You are not expected to finish the entire content now.
Your writing should be detailed, only scratching the surface of the first bullet of your outline.
Try to write AT MINIMUM 2000 WORDS.
{writing_guidelines}
continuation_prompt: |
As an expert {content_language} content writer and web researcher specializing in SEO-optimized content, continue writing the content for the given title and outline.
Title of the Content:
{{content_title}}
Content Outline:
{{content_outline}}
Relevant Web Research Results to Use:
{{web_research_result}}
Here's what you've written so far:
{{content_text}}
===============
First, silently review the content outline and what you've written so far.
Take your time to understand the flow and context.
Important to Identify the next section of your outline to write on.
Your task is to continue writing from where you left off and cover the next part of the outline.
You are not expected to finish the entire content now.
Aim to write at least 800 words.
However, only once the entire content is completely finished, write IAMDONE.
{writing_guidelines}

View File

@@ -1,691 +0,0 @@
/* General body styling */
body {
background: #f0f4f8;
background-image: linear-gradient(to bottom right, #d0e1f9, #e1ebf9);
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
margin: 0;
padding: 0;
}
.block-container {
padding: 2.5rem 5rem 3rem 5rem;
}
/* Main header styling */
.main-header {
font-size: 2em;
font-weight: bold;
color: #1565C0;
margin-bottom: 2px;
text-align: center;
text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
padding-top: 1px;
}
/* Sub-header styling */
.sub-header {
font-size: 1.75em;
font-weight: bold;
color: #1976D2;
margin-top: 20px;
margin-bottom: 10px;
text-align: center;
}
/* Enhanced Tab styling with dark red gradients */
.stTabs {
margin-top: 0.5rem;
background: white;
padding: 0.5rem;
border-radius: 2px;
box-shadow: 0 2px 2px rgba(0, 0, 0, 0.05);
}
.stTabs [data-baseweb="tab-list"] {
gap: 8px;
background: linear-gradient(135deg, #f8fafc, #f1f5f9);
padding: 8px;
border-radius: 8px;
}
.stTabs [data-baseweb="tab"] {
height: auto;
padding: 12px 20px;
color: #E2E8F0;
border-radius: 8px;
font-weight: 600;
font-size: 15px;
background: linear-gradient(135deg, #4A5568, #2D3748);
border: 1px solid rgba(255, 255, 255, 0.1);
transition: all 0.3s ease;
letter-spacing: 0.3px;
background: white;
border-radius: 6px;
padding: 8px 16px;
font-weight: 600;
color: #475569;
transition: all 0.2s ease;
}
.stTabs [data-baseweb="tab"]:hover {
color: #FFFFFF;
background: linear-gradient(135deg, #822727, #991B1B);
border-color: rgba(255, 255, 255, 0.2);
transform: translateY(-1px);
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
background: #f1f5f9;
color: #1e293b;
}
.stTabs [data-baseweb="tab"][aria-selected="true"] {
color: #FFFFFF;
background: linear-gradient(135deg, #3182CE, #2C5282);
border-color: #DC2626;
box-shadow: 0 4px 12px rgba(220, 38, 38, 0.3);
position: relative;
background: linear-gradient(135deg, #3182ce, #2c5282);
color: white;
}
.stTabs [data-baseweb="tab"][aria-selected="true"]::after {
content: '';
position: absolute;
bottom: -2px;
left: 10%;
width: 80%;
height: 2px;
background: linear-gradient(90deg, transparent, #FFFFFF, transparent);
border-radius: 2px;
}
.stTabs [data-baseweb="tab-panel"] {
padding: 20px;
background: linear-gradient(135deg, #FFFFFF, #F8FAFC);
border-radius: 12px;
margin-top: 10px;
border: 1px solid rgba(226, 232, 240, 0.8);
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
}
/* Enhanced tab content for better readability */
.stTabs [data-baseweb="tab-panel"] p {
color: #1A202C;
line-height: 1.7;
font-size: 15px;
}
.stTabs [data-baseweb="tab-panel"] ul {
margin-top: 1rem;
margin-bottom: 1rem;
padding-left: 1.5rem;
}
.stTabs [data-baseweb="tab-panel"] li {
color: #2D3748;
margin-bottom: 0.5rem;
line-height: 1.6;
}
/* Tab content headings */
.stTabs [data-baseweb="tab-panel"] strong {
color: #1A202C;
font-weight: 600;
font-size: 16px;
}
/* Success/Warning messages in tabs */
.stTabs [data-baseweb="tab-panel"] .stSuccess,
.stTabs [data-baseweb="tab-panel"] .stWarning {
margin-top: 1rem;
margin-bottom: 1rem;
border-radius: 8px;
}
/* Main Application Tabs */
.tab-container {
background: linear-gradient(135deg, #1A202C, #2D3748);
border-radius: 16px;
padding: 20px;
margin: 20px 0;
box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
}
.tab-content {
background: linear-gradient(135deg, #FFFFFF, #F8FAFC);
border-radius: 12px;
padding: 25px;
margin-top: 15px;
border: 1px solid rgba(226, 232, 240, 0.8);
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.05);
}
/* Tab Content Typography */
.tab-content h1, .tab-content h2, .tab-content h3 {
color: #2D3748;
margin-bottom: 1rem;
font-weight: 600;
}
.tab-content p {
color: #4A5568;
line-height: 1.8;
margin-bottom: 1rem;
}
/* Custom Scrollbar for Tab Content */
.tab-content::-webkit-scrollbar {
width: 8px;
}
.tab-content::-webkit-scrollbar-track {
background: #F7FAFC;
border-radius: 4px;
}
.tab-content::-webkit-scrollbar-thumb {
background: linear-gradient(135deg, #CBD5E0, #A0AEC0);
border-radius: 4px;
}
.tab-content::-webkit-scrollbar-thumb:hover {
background: linear-gradient(135deg, #A0AEC0, #718096);
}
/* Enhanced Tab Indicators */
.stTabs [data-baseweb="tab"][aria-selected="true"]::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(255, 255, 255, 0.1);
border-radius: 8px;
z-index: -1;
animation: tabPulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
@keyframes tabPulse {
0%, 100% { opacity: 0.5; }
50% { opacity: 1; }
}
/* Text Inputs */
.stTextInput > div {
background: #FFFFFF;
}
.stTextInput > div > div > input {
background: #F7FAFC;
border: 2px solid #E2E8F0;
border-radius: 10px;
padding: 12px 16px;
font-size: 15px;
color: #2D3748;
transition: all 0.3s ease;
}
.stTextInput > div > div > input:hover {
border-color: #CBD5E0;
background: #EDF2F7;
}
.stTextInput > div > div > input:focus {
border-color: #C53030;
box-shadow: 0 0 0 3px rgba(197, 48, 48, 0.2);
background: #FFFFFF;
}
/* Sidebar container styling - subtle modern gradient */
[data-testid="stSidebar"] {
background: linear-gradient(135deg, #f8fafc, #f1f5f9);
color: #334155;
padding: 20px;
border-right: 1px solid rgba(148, 163, 184, 0.2);
box-shadow: 2px 0 8px rgba(0, 0, 0, 0.05);
transition: width 0.3s ease-in-out !important;
}
/* Collapsed sidebar styling */
[data-testid="stSidebar"][aria-expanded="false"] {
margin-left: -21rem;
}
/* Sidebar title styling - improved contrast */
[data-testid="stSidebar"] h1, [data-testid="stSidebar"] h2, [data-testid="stSidebar"] h3 {
color: #1e293b;
font-weight: 600;
margin-bottom: 1.5rem;
letter-spacing: 0.02em;
border-bottom: 2px solid #e2e8f0;
padding-bottom: 0.75rem;
}
/* Sidebar expander styling - modern and subtle */
[data-testid="stSidebar"] .st-expander {
background: linear-gradient(135deg, #ffffff, #f8fafc);
border: 1px solid #e2e8f0;
border-radius: 8px;
margin-bottom: 1rem;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.03);
overflow: hidden;
}
[data-testid="stSidebar"] .st-expander > div:first-child {
color: #334155;
font-weight: 600;
padding: 0.875rem 1rem;
background: linear-gradient(135deg, #f8fafc, #f1f5f9);
border-bottom: 1px solid #e2e8f0;
}
/* Radio button styling - improved visibility */
[data-testid="stSidebar"] .stRadio > div {
display: flex;
flex-direction: column;
gap: 0.625rem;
}
[data-testid="stSidebar"] .stRadio > div > label {
background: #ffffff;
color: #334155;
padding: 0.75rem 1rem;
border-radius: 6px;
font-weight: 500;
border: 1px solid #e2e8f0;
transition: all 0.2s ease;
}
[data-testid="stSidebar"] .stRadio > div > label:hover {
background: linear-gradient(135deg, #f1f5f9, #e2e8f0);
transform: translateY(-1px);
border-color: #cbd5e1;
}
[data-testid="stSidebar"] .stRadio > div > label[data-selected="true"] {
background: linear-gradient(135deg, #0ea5e9, #0284c7);
color: #ffffff;
border-color: #0284c7;
box-shadow: 0 2px 4px rgba(2, 132, 199, 0.2);
}
/* Input and select styling - improved contrast */
[data-testid="stSidebar"] input, [data-testid="stSidebar"] select {
background: #ffffff;
color: #334155;
border: 1px solid #e2e8f0;
border-radius: 6px;
padding: 0.75rem;
font-size: 0.875rem;
margin-bottom: 0.75rem;
transition: all 0.2s ease;
}
[data-testid="stSidebar"] input:focus, [data-testid="stSidebar"] select:focus {
border-color: #0ea5e9;
box-shadow: 0 0 0 2px rgba(14, 165, 233, 0.1);
outline: none;
}
/* Button styling - modern and subtle */
[data-testid="stSidebar"] button {
background: linear-gradient(135deg, #0ea5e9, #0284c7);
color: #ffffff;
border: none;
border-radius: 6px;
padding: 0.75rem 1rem;
font-weight: 500;
cursor: pointer;
transition: all 0.2s ease;
}
[data-testid="stSidebar"] button:hover {
background: linear-gradient(135deg, #0284c7, #0369a1);
transform: translateY(-1px);
box-shadow: 0 2px 4px rgba(2, 132, 199, 0.2);
}
/* Settings button styling */
[data-testid="stSidebar"] .stButton > button {
background: linear-gradient(135deg, #3182CE, #2C5282);
color: white;
border: none;
padding: 0.75rem 1rem;
font-weight: 600;
border-radius: 8px;
transition: all 0.3s ease;
width: 100%;
margin-bottom: 1rem;
}
[data-testid="stSidebar"] .stButton > button:hover {
background: linear-gradient(135deg, #2C5282, #1A365D);
transform: translateY(-2px);
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
/* Scrollbar styling - subtle and modern */
[data-testid="stSidebar"]::-webkit-scrollbar {
width: 8px;
}
[data-testid="stSidebar"]::-webkit-scrollbar-track {
background: #f8fafc;
}
[data-testid="stSidebar"]::-webkit-scrollbar-thumb {
background: #cbd5e1;
border-radius: 4px;
border: 2px solid #f8fafc;
}
[data-testid="stSidebar"]::-webkit-scrollbar-thumb:hover {
background: #94a3b8;
}
/* Content section styling */
.content-section {
padding: 20px;
margin-bottom: 30px;
border-radius: 10px;
box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
background-color: #ffffff;
}
/* Custom button styling */
div.stButton > button:first-child {
background: #1565C0;
color: white;
border: none;
padding: 12px 24px;
border-radius: 8px;
text-align: center;
text-decoration: none;
display: inline-block;
font-size: 16px;
margin: 10px 2px;
cursor: pointer;
transition: background-color 0.3s ease;
box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
font-weight: bold;
}
div.stButton > button:hover:first-child {
background-color: #1976A2;
box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.3);
}
/* Scrollbar styling */
::-webkit-scrollbar-track {
background: #e1ebf9;
}
::-webkit-scrollbar-thumb {
background-color: #90CAF9;
border-radius: 10px;
border: 3px solid #e1ebf9;
}
::-webkit-scrollbar-thumb:hover {
background: #64B5F6;
}
::-webkit-scrollbar {
width: 16px;
}
/* Radio button group styling */
div.row-widget.stRadio > div {
flex-direction: row;
align-items: stretch;
}
div.row-widget.stRadio > div[role="radiogroup"] > label[data-baseweb="radio"] {
background-color: #BBDEFB;
padding-right: 10px;
padding-left: 4px;
padding-bottom: 3px;
margin: 4px;
}
/* Radio wrapper styling */
.radio-wrapper {
border: 2px solid #1565C0;
border-radius: 5px;
padding: 15px;
margin: 10px 0;
background-color: #f9f9f9;
}
/* Content title styling */
.content-title {
font-size: 1.5em;
font-weight: bold;
margin-bottom: 10px;
color: #333;
}
/* Audio player styling */
audio::-webkit-media-controls-panel,
audio::-webkit-media-controls-enclosure {
background-color: #532b5a;
}
audio::-webkit-media-controls-time-remaining-display,
audio::-webkit-media-controls-current-time-display {
color: white;
text-shadow: none;
}
audio::-webkit-media-controls-timeline {
background-color: #532b5a;
border-radius: 25px;
margin-left: 10px;
margin-right: 10px;
}
/* Select input styling */
.stSelectbox > div[data-baseweb="select"] > div {
padding: -1px;
margin: 2px 0;
border: 3px solid #1565C0;
background-color: #ffc10794;
font-size: 16px;
font-weight: bold;
transition: border-color 0.3s ease, box-shadow 0.3s ease;
appearance: none;
background-repeat: no-repeat;
background-position: right 10px center;
background-size: 10px;
}
select:focus {
border-color: #1565C0;
box-shadow: 0 0 5px rgba(21, 101, 192, 0.5);
}
select option {
padding: 10px;
}
/* Content Planning Tools Styling */
.content-header {
background: linear-gradient(135deg, #f8fafc, #f1f5f9);
padding: 1rem;
border-radius: 2px;
margin-bottom: 2rem;
border: 1px solid rgba(148, 163, 184, 0.2);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.content-header h2 {
color: #1e293b;
font-size: 1rem;
font-weight: 300;
margin-bottom: 0.5rem;
}
.content-header .subtitle {
color: #475569;
font-size: 1.1rem;
line-height: 1;
}
.tool-section {
background: white;
padding: 1rem;
border-radius: 2px;
margin-bottom: 1.5rem;
border: 1px solid #e2e8f0;
}
.tool-section h3 {
color: #1e293b;
font-size: 1.4rem;
font-weight: 600;
margin-bottom: 0.75rem;
}
.tool-section p {
color: #475569;
font-size: 1rem;
line-height: 1.5;
}
/* Button styling */
.stButton > button {
background: linear-gradient(135deg, #3182ce, #2c5282);
color: white;
border: none;
padding: 0.75rem 1.5rem;
font-weight: 600;
border-radius: 8px;
transition: all 0.3s ease;
}
.stButton > button:hover {
background: linear-gradient(135deg, #2c5282, #1a365d);
transform: translateY(-2px);
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
/* Search option containers styling */
.search-option-container {
background: linear-gradient(135deg, #f8fafc, #f1f5f9);
border: 1px solid rgba(148, 163, 184, 0.2);
border-radius: 8px;
padding: 1rem;
margin-bottom: 1rem;
text-align: center;
height: 100%;
transition: all 0.3s ease;
}
.search-option-container:hover {
transform: translateY(-2px);
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
}
.search-option-container h4 {
color: #1e293b;
margin-bottom: 0.5rem;
}
.search-option-container p {
color: #64748b;
margin: 0;
}
/* Button styling for search options */
.stButton > button {
background: linear-gradient(135deg, #3182ce, #2c5282);
color: white;
border: none;
padding: 0.5rem 1rem;
font-weight: 600;
border-radius: 6px;
transition: all 0.3s ease;
}
.stButton > button:disabled {
background: linear-gradient(135deg, #94a3b8, #64748b);
cursor: not-allowed;
}
.stButton > button:not(:disabled):hover {
background: linear-gradient(135deg, #2c5282, #1e3a8a);
transform: translateY(-1px);
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
/* Search options styling */
.search-option {
background: linear-gradient(135deg, #f8fafc, #f1f5f9);
border: 1px solid rgba(148, 163, 184, 0.2);
border-radius: 8px;
padding: 1rem;
height: 100%;
transition: all 0.3s ease;
text-align: center;
}
.search-option:hover {
transform: translateY(-2px);
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
}
.search-option h4 {
color: #1e293b;
margin-bottom: 0.5rem;
font-weight: 600;
}
.search-option p {
color: #64748b;
font-size: 0.9em;
margin-bottom: 1rem;
}
.search-option.active {
border: 2px solid #3182ce;
background: linear-gradient(135deg, #ebf8ff, #e6fffa);
}
/* Add these to your existing search-option styles */
.search-option.disabled {
background: linear-gradient(135deg, #f1f5f9, #e2e8f0);
opacity: 0.8;
cursor: not-allowed;
border: 1px solid #cbd5e1;
}
.search-option .api-missing {
display: inline-block;
background: #fee2e2;
color: #dc2626;
padding: 2px 8px;
border-radius: 4px;
font-size: 0.8em;
margin-top: 0.5rem;
}
.search-option.disabled h4,
.search-option.disabled p {
color: #64748b;
}
/* Move main content upwards and reduce free space at the top */
.main .block-container {
padding-top: 0 !important;
margin-top: 0 !important;
}
h1 {
margin-top: 0 !important;
padding-top: 0 !important;
}
/* Optionally, reduce margin for the main title container if used */
.seo-main-title, .main-title, .dashboard-title {
margin-top: 0 !important;
padding-top: 0 !important;
}

View File

@@ -1,233 +0,0 @@
2201.11990
2210.02414
2112.11446v2
2203.15556
2201.08239
2204.06745
2305.10403
2307.09288
2208.11857
2302.12095
1905.00537
2209.12356
2301.08745
2302.10198
2009.03300
2208.03299
2212.13138
2201.11903
2211.14275
2001.08361
2001.08361
2307.01952
2206.07682
2302.06476
2206.04615
2211.02011
2212.10403
2303.17564
2204.02329
2205.10625
2205.09712
2206.02336
2206.06315
2207.10342
2209.14610
2210.03057
2209.07686
2210.03493
2210.02441
2210.07128
2210.11610
2212.08635
2212.09597
2212.09561
2212.10001
2212.10071
2301.13379
2302.00923
2302.00093
2302.12246
2303.11381
2305.04118
2305.11255
2305.17812
2301.13848
2311.16452
2303.08774
2304.01373
2302.13971v1
2303.04360
2208.10442
2302.13007
2303.15056
2302.04166
2303.12712
2303.11366
2308.12950
2306.08568
2107.03374
2305.06161
2305.07922
2203.13474
2204.02311
2302.13971
2303.17568
2203.07814
2301.03988
2305.02309
2207.01780
2301.13816
2307.04349
2207.10397
2304.05128
2306.09896
2306.02907
2108.07732
2306.03091
2308.10335
2312.17244
2305.02301
2305.15717
2310.02421
2305.11170
2309.00384
2310.06839
2312.04737
2309.14021
2312.07046
2308.07633
2305.17888
2306.08162
2309.05210
2308.14903
2310.19102
2311.09550
2311.00502
2312.08583
2305.11627
2301.00774
2212.09095
2310.01801
2310.01382
2310.08915
2310.09499
https://github.com/Significant-Gravitas/AutoGPT
https://github.com/gpt-engineer-org/gpt-engineer
https://github.com/reworkd/AgentGPT
https://github.com/geekan/MetaGPT
https://github.com/Josh-XT/AGiXT
https://github.com/litanlitudan/skyagi
https://github.com/joonspk-research/generative_agents
https://github.com/smol-ai/developer
https://github.com/Forethought-Technologies/AutoChain
https://github.com/TransformerOptimus/SuperAGI
https://github.com/homanp/superagent
https://github.com/a16z-infra/ai-town
https://github.com/AI-Engineer-Foundation/agent-protocol
https://github.com/microsoft/autogen
https://github.com/cpacker/MemGPT
https://github.com/shroominic/codeinterpreter-api
https://github.com/aiwaves-cn/agents
https://github.com/dataelement/bisheng
https://github.com/Maplemx/Agently
https://github.com/zilliztech/GPTCache
http://github.com//Significant-Gravitas/AutoGPT
http://github.com//AUTOMATIC1111/stable-diffusion-webui
http://github.com//gpt-engineer-org/gpt-engineer
http://github.com//lencx/ChatGPT
http://github.com//Pythagora-io/gpt-pilot
http://github.com//mouredev/Hello-Python
http://github.com//Bin-Huang/chatbox
http://github.com//getumbrel/llama-gpt
http://github.com//transitive-bullshit/chatgpt-api
http://github.com//python-telegram-bot/python-telegram-bot
http://github.com//skorch-dev/skorch
http://github.com//botpress/botpress
http://github.com//TransformerOptimus/SuperAGI
http://github.com//AMAI-GmbH/AI-Expert-Roadmap
http://github.com//babysor/MockingBird
http://github.com//gventuri/pandas-ai
http://github.com//hpcaitech/ColossalAI
http://github.com//LAION-AI/Open-Assistant
http://github.com//xitu/gold-miner
http://github.com//google-research/google-research
http://github.com//photoprism/photoprism
http://github.com//explosion/spaCy
http://github.com//StanGirard/quivr
http://github.com//microsoft/AI-For-Beginners
http://github.com//GitHubDaily/GitHubDaily
http://github.com//Lightning-AI/pytorch-lightning
http://github.com//lutzroeder/netron
http://github.com//bentoml/OpenLLM
http://github.com//cloneofsimo/lora
http://github.com//eosphoros-ai/DB-GPT
http://github.com//labring/FastGPT
http://github.com//Mintplex-Labs/anything-llm
http://github.com//danswer-ai/danswer
http://github.com//neuml/txtai
http://github.com//run-llama/rags
http://github.com//postgresml/postgresml
http://github.com//JushBJJ/Mr.-Ranedeer-AI-Tutor
http://github.com//s0md3v/roop
http://github.com//microsoft/generative-ai-for-beginners
http://github.com//leon-ai/leon
http://github.com//geekan/MetaGPT
http://github.com//jmorganca/ollama
http://github.com//run-llama/llama_index
http://github.com//milvus-io/milvus
http://github.com//chatchat-space/Langchain-Chatchat
http://github.com//zhayujie/chatgpt-on-wechat
http://github.com//mindsdb/mindsdb
http://github.com//FlowiseAI/Flowise
http://github.com//microsoft/unilm
http://github.com//mlabonne/llm-course
http://github.com//sweepai/sweep
http://github.com//lucidrains/imagen-pytorch
http://github.com//GokuMohandas/Made-With-ML
http://github.com//TabbyML/tabby
http://github.com//chroma-core/chroma
http://github.com//eugeneyan/open-llms
http://github.com//cleanlab/cleanlab
http://github.com//microsoft/semantic-kernel
http://github.com//ymcui/Chinese-LLaMA-Alpaca
http://github.com//mudler/LocalAI
http://github.com//mlc-ai/mlc-llm
http://github.com//THUDM/ChatGLM2-6B
http://github.com//langgenius/dify
http://github.com//vllm-project/vllm
http://github.com//ludwig-ai/ludwig
http://github.com//hiyouga/LLaMA-Factory
http://github.com//h2oai/h2ogpt
http://github.com//css-doodle/css-doodle
http://github.com//williamngan/pts
http://github.com//dair-ai/Prompt-Engineering-Guide
http://github.com//AI4Finance-Foundation/FinGPT
http://github.com//yzfly/awesome-chatgpt-zh
http://github.com//microsoft/promptflow
http://github.com//jina-ai/jina
http://github.com//deepset-ai/haystack
http://github.com//open-mmlab/mmagic
http://github.com//bentoml/BentoML
http://github.com//openvinotoolkit/openvino
http://github.com//reworkd/AgentGPT
http://github.com//logspace-ai/langflow
http://github.com//mayooear/gpt4-pdf-chatbot-langchain
http://github.com//activeloopai/deeplake
http://github.com//danny-avila/LibreChat
http://github.com//liaokongVFX/LangChain-Chinese-Getting-Started-Guide
http://github.com//kyrolabs/awesome-langchain
http://github.com//zilliztech/GPTCache
http://github.com//speechbrain/speechbrain
http://github.com//vercel/ai
http://github.com//baichuan-inc/Baichuan-7B
http://github.com//microsoft/autogen
http://github.com//f/awesome-chatgpt-prompts
http://github.com//xtekky/gpt4free
http://github.com//wechaty/wechaty
http://github.com//RasaHQ/rasa
http://github.com//lobehub/lobe-chat
http://github.com//GaiZhenbiao/ChuanhuChatGPT
http://github.com//gunthercox/ChatterBot
http://github.com//mamoe/mirai
http://github.com//haotian-liu/LLaVA

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.8 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

View File

@@ -1,25 +0,0 @@
{
"role": "Topic Intake and Specification Agent (TISA)",
"purpose": "To gather and clarify user inputs, create a structured brief, and identify existing content related to the chosen topic.",
"tasks": [
"Collect detailed information from the user, including the topic, target audience, desired tone, industry specifics, and format.",
"Formulate a comprehensive and clear brief for the Research Agent.",
"Search for existing content on the chosen topic to provide context and starting points for the Research Agent."
],
"goals": [
"Ensure that the users ideas and preferences are clearly understood and documented.",
"Provide a well-structured brief that guides the subsequent agents in the workflow.",
"Inform the user and research agent about existing content to enhance the research process."
],
"backstory": "TISA was developed to streamline the initial phase of podcast creation, recognizing that clear and detailed input is critical for high-quality output. Designed with an empathetic approach, TISA aims to bridge the gap between user ideas and technical execution by providing a structured starting point.",
"skills": [
"Effective communication for clarifying user requirements.",
"Structuring detailed and comprehensive briefs.",
"Content search and identification."
],
"tools": [
"Interactive forms for user input.",
"Predefined templates for brief formulation.",
"Search engines and content discovery tools."
]
}

View File

@@ -1,24 +0,0 @@
{
"role": "Research Agent (RA)",
"purpose": "To conduct comprehensive research based on the provided brief and organize findings into a clear summary.",
"tasks": [
"Gather information from various sources, including websites, articles, books, research papers, and social media.",
"Use knowledge graphs and structured data tools (e.g., Google Knowledge Graph, Wikidata) to enhance research efficiency.",
"Summarize research findings in a concise and organized manner, highlighting key points, statistics, and relevant insights."
],
"goals": [
"Provide accurate, relevant, and comprehensive research to inform the scriptwriting process.",
"Present information in a format that is easy to understand and use for the scriptwriting agent."
],
"backstory": "RA was designed to tackle the challenge of information overload by filtering and prioritizing data. Built with advanced algorithms and access to a wide range of databases, RA ensures that the podcast content is well-informed and backed by reliable sources.",
"skills": [
"Efficient information retrieval.",
"Summarizing and organizing data.",
"Knowledge graph integration (optional)."
],
"tools": [
"Web scraping tools.",
"Industry-specific databases.",
"Content summarization tools."
]
}

View File

@@ -1,24 +0,0 @@
{
"role": "Script Writing Agent (SWA)",
"purpose": "To transform the research summary and brief into a detailed, engaging, and balanced podcast script.",
"tasks": [
"Create a script with distinct dialogues for three speakers, ensuring balanced contributions and diverse perspectives.",
"Maintain the specified tone and tailor the language to the target audience.",
"Incorporate relevant industry terminology while avoiding unnecessary jargon."
],
"goals": [
"Produce a compelling and coherent podcast script that meets the users specifications.",
"Ensure that each speakers dialogue is engaging and well-balanced.",
"Adapt the script to the desired tone and audience preferences."
],
"backstory": "SWA was created to bring creativity and structure to the podcast creation process. Leveraging natural language processing and dialogue generation capabilities, SWA ensures that the podcast script is not only informative but also engaging and well-paced.",
"skills": [
"Storytelling and dialogue generation.",
"Integrating research findings into a coherent script.",
"Character development (optional)."
],
"tools": [
"AI writing tools like ChatGPT and Jasper.",
"Dialogue generation tools."
]
}

View File

@@ -1,24 +0,0 @@
{
"role": "Review and Revision Agent (RRA)",
"purpose": "To evaluate the script for clarity, engagement, accuracy, and adherence to the users requirements, and to suggest improvements.",
"tasks": [
"Thoroughly review the script for coherence, logical flow, and engagement.",
"Fact-check the script using advanced AI tools (e.g., Google Search Console, fact-checking APIs) to ensure accuracy.",
"Suggest revisions and improvements to enhance the scripts overall quality."
],
"goals": [
"Ensure that the final script is clear, accurate, and engaging.",
"Make necessary edits to meet the users requirements and preferences.",
"Provide feedback that helps improve the scripts content and flow."
],
"backstory": "RRA was designed to add a critical layer of quality control to the podcast creation process. With a focus on accuracy and engagement, RRA combines grammar and style checking with advanced fact-checking capabilities to refine and polish the script.",
"skills": [
"Grammar and style checking.",
"Fact-checking and tone analysis.",
"AI-assisted fact-checking (optional)."
],
"tools": [
"Grammarly, QuillBot for grammar and style.",
"Fact-checking tools."
]
}

View File

@@ -1,12 +0,0 @@
[main]
role = Senior Content Outliner at Alwrity.com
goal = Create a content outline from your insights & provided context.
[backstory]
text = You are an expert digital content writer and marketing expert. Take your time going over the research. Your content outline will be expanded upon after review.
[task]
task_description = Use the insights to produce a detailed content outline on the given main focus keyword.
task_expected_output = A detailed and insightful content outline for given main focus keyword.

View File

@@ -1,11 +0,0 @@
[main]
role = Senior Research Analyst at Alwrity.com.
goal = Do web research to provide writing ideas for Content writer at Alwrity.com.
[backstory]
text = You web researcher at Alwrity.com. You are expert in researching latest information about various topics. Your detailed content research is pivotal to company's content strategy. Your expertise lies in identifying emerging trends, topic for content creation.
[task]
task_description = Research blog content material for content writer. Include FAQs from people also ask.
task_expected_output = Provide blog content research to content writer.

View File

@@ -1,13 +0,0 @@
[main]
role = Expert Writing Critic & content Editor at Alwrity.com
goal = Review & eidt draft content provided by Content writer.
# Personalize the agent, give persona, personality, tone etc.
[backstory]
text = You are expert reviewer with 10 years of exprience in reviewing digital content. The make sure that article are interesting and correct information provided. Simplicity will resonate with your readers. Pay attention to grammar and punctuation. Avoid AI sounding words and pass AI detection tools. Engage with active voice. Its as if youre in conversation with the reader. Example: Use "You will see benefits" instead of "One will see benefits." Use headings, bullets, and formatting to break the monotony of the text. These elements add rhythm and can make a document more inviting. A concise conclusion that resonates with the beginning can bring your piece full circle, satisfying your readers.
[task]
task_description = Sharpen the focus of the draft content by identifying overly wordy sections and crafting concise alternatives. Words with many syllables are barriers to simplicity. Choose simpler words, avoid sounding like AI. Pay special attention to readiblity, formatting & styling of the content. Make sure the draft content is SEO optimised for given keywords. Use insights & context from other team members.
task_expected_output = Provide a final content version that can be published.

View File

@@ -1,13 +0,0 @@
[main]
role = Content writer at Alwrity.com
goal = Write an original, highly detailed, engaging & SEO optimized blog post on given outline.
[backstory]
text = You are a renowned Content Writer, known for your insightful and engaging articles. You transform complex concepts into compelling narratives. Limit them to 20 words or so, using language familiar to the majority. Example: Instead of "Utilize this methodology," say "Use this method." Employ a clear and concise writing style. Engage your audience with a compelling, fun, and informative tone, that effectively conveys the technical aspects of the topic in simple terms.
[task]
task_description = Use the outline provided by Senior Content Outliner and write detailed blog content.
task_expected_output = An original & highly detailed blog content convering most sections of the provided outline.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 279 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 MiB