Spaces:
Paused
Paused
Nick Jordan commited on
Commit ·
ddbc89c
1
Parent(s): 7b5b11f
chore: add announcements
Browse files
app.py
CHANGED
|
@@ -5,45 +5,55 @@ from datetime import datetime
|
|
| 5 |
# Organization details
|
| 6 |
ORG_NAME = "Narrative I/O"
|
| 7 |
DESCRIPTION = """
|
| 8 |
-
Narrative I/O
|
| 9 |
|
| 10 |
-
*
|
| 11 |
-
*
|
| 12 |
-
*
|
| 13 |
-
*
|
| 14 |
|
| 15 |
-
Our platform
|
| 16 |
-
|
| 17 |
"""
|
| 18 |
|
| 19 |
# News/Announcements
|
| 20 |
ANNOUNCEMENTS = [
|
| 21 |
{
|
| 22 |
-
"date": "
|
| 23 |
-
"title": "
|
| 24 |
-
"content": "
|
| 25 |
},
|
| 26 |
{
|
| 27 |
-
"date": "
|
| 28 |
-
"title": "
|
| 29 |
-
"content": "
|
| 30 |
-
}
|
| 31 |
-
]
|
| 32 |
-
|
| 33 |
-
# Public Models
|
| 34 |
-
PUBLIC_MODELS = [
|
| 35 |
{
|
| 36 |
-
"
|
| 37 |
-
"
|
| 38 |
-
"
|
| 39 |
},
|
| 40 |
{
|
| 41 |
-
"
|
| 42 |
-
"
|
| 43 |
-
"
|
| 44 |
}
|
| 45 |
]
|
| 46 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 47 |
# Public Datasets
|
| 48 |
PUBLIC_DATASETS = [
|
| 49 |
{
|
|
@@ -56,15 +66,8 @@ PUBLIC_DATASETS = [
|
|
| 56 |
# Demo configurations
|
| 57 |
DEMOS = [
|
| 58 |
{
|
| 59 |
-
"title": "
|
| 60 |
-
"description": "Try our entity matching model with your own data",
|
| 61 |
-
"function": lambda x, y: f"Similarity score: {0.85}" # Placeholder function
|
| 62 |
},
|
| 63 |
-
{
|
| 64 |
-
"title": "Data Quality Assessment",
|
| 65 |
-
"description": "Check your data quality metrics",
|
| 66 |
-
"function": lambda x: {"completeness": 0.95, "accuracy": 0.92} # Placeholder function
|
| 67 |
-
}
|
| 68 |
]
|
| 69 |
|
| 70 |
# Custom CSS for styling
|
|
@@ -101,12 +104,16 @@ h2, strong, h3 {
|
|
| 101 |
margin-bottom: 15px;
|
| 102 |
}
|
| 103 |
|
| 104 |
-
p, span, li {
|
| 105 |
font-size: 14px;
|
| 106 |
color: #415290; /* text-color-secondary */
|
| 107 |
margin-bottom: 15px;
|
| 108 |
}
|
| 109 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 110 |
.news-item {
|
| 111 |
padding: 10px 0;
|
| 112 |
border-bottom: 1px solid #ced4da; /* surface-d */
|
|
@@ -143,8 +150,20 @@ def create_organization_page():
|
|
| 143 |
gr.Markdown(f"# {ORG_NAME}", elem_classes="title")
|
| 144 |
gr.Markdown(DESCRIPTION)
|
| 145 |
with gr.Row():
|
| 146 |
-
gr.
|
| 147 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 148 |
|
| 149 |
# News and Announcements
|
| 150 |
with gr.Column(elem_classes="card"):
|
|
@@ -153,27 +172,28 @@ def create_organization_page():
|
|
| 153 |
with gr.Row(elem_classes="news-item"):
|
| 154 |
gr.Markdown(f"""
|
| 155 |
**{announcement['title']}**
|
| 156 |
-
|
| 157 |
{announcement['content']}
|
| 158 |
""")
|
| 159 |
|
| 160 |
# Interactive Demos
|
| 161 |
with gr.Column(elem_classes="card"):
|
| 162 |
gr.Markdown("## Interactive Demos")
|
|
|
|
| 163 |
|
| 164 |
# Right section (1/3 width)
|
| 165 |
with gr.Column(scale=1):
|
| 166 |
-
# Public Models card
|
| 167 |
-
with gr.Column(elem_classes="card"):
|
| 168 |
-
|
| 169 |
-
|
| 170 |
-
|
| 171 |
-
|
| 172 |
-
|
| 173 |
-
|
| 174 |
-
|
| 175 |
-
|
| 176 |
-
|
| 177 |
|
| 178 |
# Public Datasets card
|
| 179 |
with gr.Column(elem_classes="card"):
|
|
|
|
| 5 |
# Organization details
|
| 6 |
ORG_NAME = "Narrative I/O"
|
| 7 |
DESCRIPTION = """
|
| 8 |
+
Narrative I/O builds tools and infrastructure for data processing and ML model development:
|
| 9 |
|
| 10 |
+
* Data normalization and schema standardization
|
| 11 |
+
* LLM fine-tuning and deployment infrastructure
|
| 12 |
+
* Function calling and tool integration frameworks
|
| 13 |
+
* Open-source ML model and dataset publishing
|
| 14 |
|
| 15 |
+
Our platform focuses on solving practical data integration challenges through
|
| 16 |
+
standardized APIs, normalized schemas, and deployable ML models.
|
| 17 |
"""
|
| 18 |
|
| 19 |
# News/Announcements
|
| 20 |
ANNOUNCEMENTS = [
|
| 21 |
{
|
| 22 |
+
"date": "2025-01-07",
|
| 23 |
+
"title": "🚀Narrative Model Studio Released",
|
| 24 |
+
"content": "Today we're making Narrative Model Studio available to the public. [Model Studio](https://www.narrative.io/products/model-studio) is a platform to make it easy for *anyone* to train a LLM. Model Studio build's on top of our best in class Data Collaboration Platoform and Data Marketplace to all users to source, normalize, and package data for training, with not technical expertise required. That data can then be used to fine-tune an LLM for enterprise specific use cases and further deployed to inference endpoints."
|
| 25 |
},
|
| 26 |
{
|
| 27 |
+
"date": "2025-01-07",
|
| 28 |
+
"title": "🔄 Rosetta Stone 2.0 Private Model Release",
|
| 29 |
+
"content": "Today we are releasing our [Rosetta Stone 2.0](https://www.narrative.io/products/rosetta-stone) Private Model. When we started Narrative we set out to make it easier for everyone to work with data. One of the biggest challenges we found users faced was the lack of a normalization layer across different data sources, both internally and externally. We build Rosetta Stone to tackle this problem by using AI to normalize data to a common ontology and syntax, and making that normalized data directly queryable. Rosetta Stone 2.0 builds on the first version by leveraging the latest LLM Models and fine tuning them to perform even better than the first version. This release also marks the first time that the model is available for users to host on their own infrastructure, further reducing governance and compliance burdens."
|
| 30 |
+
},
|
|
|
|
|
|
|
|
|
|
|
|
|
| 31 |
{
|
| 32 |
+
"date": "2025-01-07",
|
| 33 |
+
"title": "🎯 Public Function Calling Models + Dataset Released",
|
| 34 |
+
"content": "Today we're excited to announce the release of our specialized function calling models and accompanying dataset. We've launched both 3B and 8B parameter models (with a 70B version coming soon) that have been meticulously fine-tuned for function calling applications. These models are built on our newly created normalized function calling dataset, which standardizes the approach to tool use in LLMs. Our implementation adopts a more standardized JSON schema for function calls, coupled with token enforcement through our [LLM Tools](https://github.com/narrative-io/narrative-llm-tools) to ensure models consistently respond using available functions. This makes these models particularly well-suited for enterprise applications where LLMs operate as backend processors, making tool calls on users' behalf rather than generating direct responses (though user interaction is still possible through a dedicated respond_to_user tool)."
|
| 35 |
},
|
| 36 |
{
|
| 37 |
+
"date": "2025-01-07",
|
| 38 |
+
"title": "🛠️ Narrative LLM Tools Released",
|
| 39 |
+
"content": "Today, we're excited to announce the release of our [LLM Tools Github repository](https://github.com/narrative-io/narrative-llm-tools). Narrative LLM Tools are a collection of tools that make it easier to use LLMs trained in Narrative's Model Studio alongside HuggingFace's Inference Endpoints."
|
| 40 |
}
|
| 41 |
]
|
| 42 |
|
| 43 |
+
# Public Models
|
| 44 |
+
# PUBLIC_MODELS = [
|
| 45 |
+
# {
|
| 46 |
+
# "name": "entity-matcher-v1",
|
| 47 |
+
# "description": "High-performance entity matching model",
|
| 48 |
+
# "link": "https://huggingface.co/Narrative-IO/entity-matcher-v1"
|
| 49 |
+
# },
|
| 50 |
+
# {
|
| 51 |
+
# "name": "data-enrichment-v2",
|
| 52 |
+
# "description": "Advanced data enrichment pipeline",
|
| 53 |
+
# "link": "https://huggingface.co/Narrative-IO/data-enrichment-v2"
|
| 54 |
+
# }
|
| 55 |
+
# ]
|
| 56 |
+
|
| 57 |
# Public Datasets
|
| 58 |
PUBLIC_DATASETS = [
|
| 59 |
{
|
|
|
|
| 66 |
# Demo configurations
|
| 67 |
DEMOS = [
|
| 68 |
{
|
| 69 |
+
"title": "Coming Soon",
|
|
|
|
|
|
|
| 70 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 71 |
]
|
| 72 |
|
| 73 |
# Custom CSS for styling
|
|
|
|
| 104 |
margin-bottom: 15px;
|
| 105 |
}
|
| 106 |
|
| 107 |
+
p, span, li, em {
|
| 108 |
font-size: 14px;
|
| 109 |
color: #415290; /* text-color-secondary */
|
| 110 |
margin-bottom: 15px;
|
| 111 |
}
|
| 112 |
|
| 113 |
+
em {
|
| 114 |
+
font-style: italic;
|
| 115 |
+
}
|
| 116 |
+
|
| 117 |
.news-item {
|
| 118 |
padding: 10px 0;
|
| 119 |
border-bottom: 1px solid #ced4da; /* surface-d */
|
|
|
|
| 150 |
gr.Markdown(f"# {ORG_NAME}", elem_classes="title")
|
| 151 |
gr.Markdown(DESCRIPTION)
|
| 152 |
with gr.Row():
|
| 153 |
+
gr.HTML("""
|
| 154 |
+
<div style="display: flex; gap: 20px;">
|
| 155 |
+
<a href="https://narrative.io" target="_blank" class="icon-link">
|
| 156 |
+
<svg xmlns="http://www.w3.org/2000/svg" height="24" width="24" viewBox="0 0 24 24" fill="#0922A6">
|
| 157 |
+
<path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-1 17.93c-3.95-.49-7-3.85-7-7.93 0-.62.08-1.21.21-1.79L9 15v1c0 1.1.9 2 2 2v1.93zm6.9-2.54c-.26-.81-1-1.39-1.9-1.39h-1v-3c0-.55-.45-1-1-1H8v-2h2c.55 0 1-.45 1-1V7h2c1.1 0 2-.9 2-2v-.41c2.93 1.19 5 4.06 5 7.41 0 2.08-.8 3.97-2.1 5.39z"/>
|
| 158 |
+
</svg>
|
| 159 |
+
</a>
|
| 160 |
+
<a href="https://github.com/narrative-io" target="_blank" class="icon-link">
|
| 161 |
+
<svg xmlns="http://www.w3.org/2000/svg" height="24" width="24" viewBox="0 0 24 24" fill="#0922A6">
|
| 162 |
+
<path d="M12 2A10 10 0 0 0 2 12c0 4.42 2.87 8.17 6.84 9.5.5.08.66-.23.66-.5v-1.69c-2.77.6-3.36-1.34-3.36-1.34-.46-1.16-1.11-1.47-1.11-1.47-.91-.62.07-.6.07-.6 1 .07 1.53 1.03 1.53 1.03.87 1.52 2.34 1.07 2.91.83.09-.65.35-1.09.63-1.34-2.22-.25-4.55-1.11-4.55-4.92 0-1.11.38-2 1.03-2.71-.1-.25-.45-1.29.1-2.64 0 0 .84-.27 2.75 1.02.79-.22 1.65-.33 2.5-.33.85 0 1.71.11 2.5.33 1.91-1.29 2.75-1.02 2.75-1.02.55 1.35.2 2.39.1 2.64.65.71 1.03 1.6 1.03 2.71 0 3.82-2.34 4.66-4.57 4.91.36.31.69.92.69 1.85V21c0 .27.16.59.67.5C19.14 20.16 22 16.42 22 12A10 10 0 0 0 12 2z"/>
|
| 163 |
+
</svg>
|
| 164 |
+
</a>
|
| 165 |
+
</div>
|
| 166 |
+
""")
|
| 167 |
|
| 168 |
# News and Announcements
|
| 169 |
with gr.Column(elem_classes="card"):
|
|
|
|
| 172 |
with gr.Row(elem_classes="news-item"):
|
| 173 |
gr.Markdown(f"""
|
| 174 |
**{announcement['title']}**
|
| 175 |
+
### {format_date(announcement['date'])}
|
| 176 |
{announcement['content']}
|
| 177 |
""")
|
| 178 |
|
| 179 |
# Interactive Demos
|
| 180 |
with gr.Column(elem_classes="card"):
|
| 181 |
gr.Markdown("## Interactive Demos")
|
| 182 |
+
gr.Markdown("Coming Soon")
|
| 183 |
|
| 184 |
# Right section (1/3 width)
|
| 185 |
with gr.Column(scale=1):
|
| 186 |
+
# # Public Models card
|
| 187 |
+
# with gr.Column(elem_classes="card"):
|
| 188 |
+
# gr.Markdown("## Public Models")
|
| 189 |
+
# for model in PUBLIC_MODELS:
|
| 190 |
+
# with gr.Row(elem_classes="model-item"):
|
| 191 |
+
# gr.Markdown(f"""
|
| 192 |
+
# **{model['name']}**
|
| 193 |
+
# {model['description']}
|
| 194 |
+
# [View Model]({model['link']})
|
| 195 |
+
# """)
|
| 196 |
+
# gr.Markdown("[View All Models →](https://huggingface.co/collections/narrative-io/public-models-6777e756fe3748f33c403a31)", elem_classes="view-all-link")
|
| 197 |
|
| 198 |
# Public Datasets card
|
| 199 |
with gr.Column(elem_classes="card"):
|