From df418f60e050219bd1dcbe509ce62d5d24bd1ce2 Mon Sep 17 00:00:00 2001 From: Francisco Silva Date: Wed, 12 Jun 2024 17:11:39 +0100 Subject: [PATCH 01/18] add singlestore as a default author to all notebooks --- notebooks/atlas-and-kai/meta.toml | 1 + notebooks/backup-database-s3/meta.toml | 1 + notebooks/building-a-multi-agent-ai-app-with-autogen/meta.toml | 1 + notebooks/cdc-mongodb-sql-commands/meta.toml | 1 + notebooks/confluent-cloud-integration/meta.toml | 1 + notebooks/evaluating-llms-with-uptrain/meta.toml | 1 + notebooks/getting-started-with-dataframes/meta.toml | 1 + notebooks/getting-started-with-fusion-sql/meta.toml | 1 + notebooks/getting-started-with-mongocdc/meta.toml | 1 + notebooks/getting-started-with-notebooks/meta.toml | 1 + .../how-to-build-llm-apps-that-can-see-hear-speak/meta.toml | 1 + notebooks/hybrid-full-text-vector-search/meta.toml | 1 + notebooks/hybrid-search/meta.toml | 1 + notebooks/image-matching-with-sql/meta.toml | 1 + notebooks/ingest-pdfs-with-unstructured/meta.toml | 1 + .../meta.toml | 1 + notebooks/insure-gpt-demo/meta.toml | 1 + notebooks/integrating-with-pandas/meta.toml | 1 + notebooks/kebab-case/meta.toml | 1 + notebooks/launch-open-source-apps-with-langchain/meta.toml | 1 + notebooks/load-json-files-s3/meta.toml | 1 + notebooks/load-s3-files-into-shared-tier/meta.toml | 1 + notebooks/managing-stage-files-with-fusion-sql/meta.toml | 1 + notebooks/movie-recommendation/meta.toml | 1 + notebooks/network-intrusion-detection-part-1/meta.toml | 1 + notebooks/network-intrusion-detection-part-2/meta.toml | 1 + notebooks/network-intrusion-detection-part-3/meta.toml | 1 + notebooks/notebook-basics/meta.toml | 1 + notebooks/notebook-style-guide/meta.toml | 1 + notebooks/optimize-performance-with-tpch-100/meta.toml | 1 + notebooks/performance-troubleshooting/meta.toml | 1 + notebooks/pipelines-query-tuning/meta.toml | 1 + notebooks/rag-with-bedrock/meta.toml | 1 + notebooks/real-time-anomaly-detection/meta.toml | 1 + notebooks/real-time-recommendation-engine/meta.toml | 1 + notebooks/representing-unstructured-data-as-vectors/meta.toml | 1 + notebooks/restore-database-from-s3/meta.toml | 1 + notebooks/resume-evaluator-ANN-index-search/meta.toml | 1 + notebooks/resume-evaluator/meta.toml | 1 + notebooks/searching-all-of-wikipedia/meta.toml | 1 + notebooks/semantic-search-with-hugging-face/meta.toml | 1 + .../semantic-search-with-openai-embedding-creation/meta.toml | 1 + notebooks/semantic-search-with-openai-qa/meta.toml | 1 + notebooks/semantic-visualization-and-vector-datatype/meta.toml | 1 + notebooks/similarity-search-on-vector-data/meta.toml | 1 + notebooks/singlestore-april-challenge-haiku-ascii/meta.toml | 1 + notebooks/unified-data-analysis-sql-nosql-kai/meta.toml | 1 + notebooks/vector-database-basics/meta.toml | 1 + notebooks/vector-search-with-kai/meta.toml | 1 + notebooks/working-with-vector-data/meta.toml | 1 + 50 files changed, 50 insertions(+) diff --git a/notebooks/atlas-and-kai/meta.toml b/notebooks/atlas-and-kai/meta.toml index 5d42b394..804cb52a 100644 --- a/notebooks/atlas-and-kai/meta.toml +++ b/notebooks/atlas-and-kai/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Mongo Atlas & SingleStore Kai" description="""\ Run your MongoDB queries on SingleStore Kai with no code change. \ diff --git a/notebooks/backup-database-s3/meta.toml b/notebooks/backup-database-s3/meta.toml index c807206c..675a8a8c 100644 --- a/notebooks/backup-database-s3/meta.toml +++ b/notebooks/backup-database-s3/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title = "Backup Database to AWS S3" description = """\ Performs backup either single or multiple databases to AWS S3. \ diff --git a/notebooks/building-a-multi-agent-ai-app-with-autogen/meta.toml b/notebooks/building-a-multi-agent-ai-app-with-autogen/meta.toml index 7428130a..92339087 100644 --- a/notebooks/building-a-multi-agent-ai-app-with-autogen/meta.toml +++ b/notebooks/building-a-multi-agent-ai-app-with-autogen/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="How to Build a Multi-Agent AI App with AutoGen" description="""\ Learn how to build a multi-agent group chat with RAG using Autogen and SingleStore \ diff --git a/notebooks/cdc-mongodb-sql-commands/meta.toml b/notebooks/cdc-mongodb-sql-commands/meta.toml index 83adb298..f413fccb 100644 --- a/notebooks/cdc-mongodb-sql-commands/meta.toml +++ b/notebooks/cdc-mongodb-sql-commands/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title = "Ingest data from MONGODB® to SingleStore using SQL commands" description = """ Setup CDC Replication from MongoDB® to SingleStore using SQL commands. """ diff --git a/notebooks/confluent-cloud-integration/meta.toml b/notebooks/confluent-cloud-integration/meta.toml index 149bf6cd..bbe0cdd7 100644 --- a/notebooks/confluent-cloud-integration/meta.toml +++ b/notebooks/confluent-cloud-integration/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title = "Ingest data from Confluent Cloud (Kafka)" description = """ A step-by-step guide on seamlessly ingesting data from Confluent Cloud (Kafka) into your SingleStoreDB database using a robust pipeline. """ diff --git a/notebooks/evaluating-llms-with-uptrain/meta.toml b/notebooks/evaluating-llms-with-uptrain/meta.toml index 45e74a51..69b703e3 100644 --- a/notebooks/evaluating-llms-with-uptrain/meta.toml +++ b/notebooks/evaluating-llms-with-uptrain/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Evaluating LLMs with Uptrain" description="""\ Using Uptrain to evaluate LLMs built with SingleStore as the contextual store. This notebook uses OpenAI embedding models and Langchain as a development framework. diff --git a/notebooks/getting-started-with-dataframes/meta.toml b/notebooks/getting-started-with-dataframes/meta.toml index 77680fe9..d123f3d5 100644 --- a/notebooks/getting-started-with-dataframes/meta.toml +++ b/notebooks/getting-started-with-dataframes/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Getting Started with DataFrames in SingleStoreDB" description="""\ Data in SingleStoreDB can be queried and modified using a diff --git a/notebooks/getting-started-with-fusion-sql/meta.toml b/notebooks/getting-started-with-fusion-sql/meta.toml index e6678a28..efe83692 100644 --- a/notebooks/getting-started-with-fusion-sql/meta.toml +++ b/notebooks/getting-started-with-fusion-sql/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Getting Started with Fusion SQL" description="""\ Fusion SQL allows you to manage your SingleStoreDB Cloud diff --git a/notebooks/getting-started-with-mongocdc/meta.toml b/notebooks/getting-started-with-mongocdc/meta.toml index 708df857..8fca56df 100644 --- a/notebooks/getting-started-with-mongocdc/meta.toml +++ b/notebooks/getting-started-with-mongocdc/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Getting Started With CDC Replication from MongoDB" description="""\ Setup Zero ETL data replication from MongoDB to SingleStore \ diff --git a/notebooks/getting-started-with-notebooks/meta.toml b/notebooks/getting-started-with-notebooks/meta.toml index a5c53db6..a24c49af 100644 --- a/notebooks/getting-started-with-notebooks/meta.toml +++ b/notebooks/getting-started-with-notebooks/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Getting Started with Notebooks" description="""\ SingleStore Notebooks with an AI Copilot (SQrL) for data prototyping, \ diff --git a/notebooks/how-to-build-llm-apps-that-can-see-hear-speak/meta.toml b/notebooks/how-to-build-llm-apps-that-can-see-hear-speak/meta.toml index 1fa4568b..81826f43 100644 --- a/notebooks/how-to-build-llm-apps-that-can-see-hear-speak/meta.toml +++ b/notebooks/how-to-build-llm-apps-that-can-see-hear-speak/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="How to Build LLM Apps that can See Hear Speak" description="""\ Using OpenAI to build an app that can take images, audio, and text data to generate output diff --git a/notebooks/hybrid-full-text-vector-search/meta.toml b/notebooks/hybrid-full-text-vector-search/meta.toml index c5fe5637..b954512b 100644 --- a/notebooks/hybrid-full-text-vector-search/meta.toml +++ b/notebooks/hybrid-full-text-vector-search/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Hybrid Full-text and Vector Search" description="Example of similarity search over vector data and a hybrid search that combines full-text search with an indexed vector search." difficulty="intermediate" diff --git a/notebooks/hybrid-search/meta.toml b/notebooks/hybrid-search/meta.toml index 3af51177..32acc221 100644 --- a/notebooks/hybrid-search/meta.toml +++ b/notebooks/hybrid-search/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Hybrid Search" description="""\ Hybrid search combines keyword search with semantic search, diff --git a/notebooks/image-matching-with-sql/meta.toml b/notebooks/image-matching-with-sql/meta.toml index d7a46575..777ca340 100644 --- a/notebooks/image-matching-with-sql/meta.toml +++ b/notebooks/image-matching-with-sql/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Image Matching with SQL" description="""\ Facial recognition using dot_product function on vectors stored in SingleStoreDB. \ diff --git a/notebooks/ingest-pdfs-with-unstructured/meta.toml b/notebooks/ingest-pdfs-with-unstructured/meta.toml index bdf2c042..a757a1e2 100644 --- a/notebooks/ingest-pdfs-with-unstructured/meta.toml +++ b/notebooks/ingest-pdfs-with-unstructured/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Ask questions of your PDFs with Unstructured" description="Ask questions of your unstructured PDFs. In this notebook, Unstructured.io ingests pdfs accurately, then Open AI is used to create embeddings, the vector data is stored in SingleStore and finally ask questions of your PDF data" icon="file-export" diff --git a/notebooks/inserting-embeddings-from-multiple-models-into-singlestore-using-external-functions/meta.toml b/notebooks/inserting-embeddings-from-multiple-models-into-singlestore-using-external-functions/meta.toml index 05494193..4d9bb0fc 100644 --- a/notebooks/inserting-embeddings-from-multiple-models-into-singlestore-using-external-functions/meta.toml +++ b/notebooks/inserting-embeddings-from-multiple-models-into-singlestore-using-external-functions/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Inserting embeddings from multiple models into SingleStore Using External Functions" description="""\ Discover the power of SingleStoreDB's external functions to dynamically fetch and store vector embeddings from leading AI models into your database. This demo highlights leveraging SingleStore's robust vector data type and external functions for efficient management and analysis of machine learning embeddings.\ diff --git a/notebooks/insure-gpt-demo/meta.toml b/notebooks/insure-gpt-demo/meta.toml index 43196ff0..a9a230c0 100644 --- a/notebooks/insure-gpt-demo/meta.toml +++ b/notebooks/insure-gpt-demo/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="InsureGPT: OpenAI and SingleStore for Insurance" description="Creating an insurance analysis with OpenAI and vectorizing the results into SingleStore." difficulty="intermediate" diff --git a/notebooks/integrating-with-pandas/meta.toml b/notebooks/integrating-with-pandas/meta.toml index 02ba2842..13666983 100644 --- a/notebooks/integrating-with-pandas/meta.toml +++ b/notebooks/integrating-with-pandas/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Integrating pandas with SingleStoreDB" description="""\ Moving data to and from pandas DataFrames is demonstrated using diff --git a/notebooks/kebab-case/meta.toml b/notebooks/kebab-case/meta.toml index 73bd3962..2cc8ea3f 100644 --- a/notebooks/kebab-case/meta.toml +++ b/notebooks/kebab-case/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Automatically warm up your disk after resuming workspace" description="""\ Runs through the queries to bring data residing in object storage onto disk for a specified database. \ diff --git a/notebooks/launch-open-source-apps-with-langchain/meta.toml b/notebooks/launch-open-source-apps-with-langchain/meta.toml index 6b16e6cd..e688915a 100644 --- a/notebooks/launch-open-source-apps-with-langchain/meta.toml +++ b/notebooks/launch-open-source-apps-with-langchain/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Launch Open-Source Apps with LangChain" description="""\ LangChain connector to use SingleStoreDB as your vector database for your apps. \ diff --git a/notebooks/load-json-files-s3/meta.toml b/notebooks/load-json-files-s3/meta.toml index ed85914e..9390369d 100644 --- a/notebooks/load-json-files-s3/meta.toml +++ b/notebooks/load-json-files-s3/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Load JSON files with Pipeline from S3" description="""\ This notebook will help you load JSON files from a public open AWS S3 bucket. diff --git a/notebooks/load-s3-files-into-shared-tier/meta.toml b/notebooks/load-s3-files-into-shared-tier/meta.toml index 77291934..9510b68f 100644 --- a/notebooks/load-s3-files-into-shared-tier/meta.toml +++ b/notebooks/load-s3-files-into-shared-tier/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Load files from S3 into Shared Tier" description="""\ This notebook guides you through data ingestion of CSV files from an AWS S3 location into your shared tier workspace. \ diff --git a/notebooks/managing-stage-files-with-fusion-sql/meta.toml b/notebooks/managing-stage-files-with-fusion-sql/meta.toml index 6c181c69..de94e40e 100644 --- a/notebooks/managing-stage-files-with-fusion-sql/meta.toml +++ b/notebooks/managing-stage-files-with-fusion-sql/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Managing Stage files with Fusion SQL" description="""\ Learn how to manage your Stage files in SingleStoreDB diff --git a/notebooks/movie-recommendation/meta.toml b/notebooks/movie-recommendation/meta.toml index 5bcfa253..56a13d20 100644 --- a/notebooks/movie-recommendation/meta.toml +++ b/notebooks/movie-recommendation/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Movie Recommendation" description="""\ Movie recommendation engine using vectors stored in SingleStore to find your next watch. \ diff --git a/notebooks/network-intrusion-detection-part-1/meta.toml b/notebooks/network-intrusion-detection-part-1/meta.toml index f2b37f7b..72b4ced8 100644 --- a/notebooks/network-intrusion-detection-part-1/meta.toml +++ b/notebooks/network-intrusion-detection-part-1/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="IT Threat Detection, Part 1" description=""" Part 1 or Real-time threat Detection - This notebook demonstrates the diff --git a/notebooks/network-intrusion-detection-part-2/meta.toml b/notebooks/network-intrusion-detection-part-2/meta.toml index eecb2779..a6d60c33 100644 --- a/notebooks/network-intrusion-detection-part-2/meta.toml +++ b/notebooks/network-intrusion-detection-part-2/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="IT Threat Detection, Part 2" description="""\ Part 2 or Real-time threat Detection - Validate the accuracy of the diff --git a/notebooks/network-intrusion-detection-part-3/meta.toml b/notebooks/network-intrusion-detection-part-3/meta.toml index c9cc525f..4642d464 100644 --- a/notebooks/network-intrusion-detection-part-3/meta.toml +++ b/notebooks/network-intrusion-detection-part-3/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="IT Threat Detection, Part 3" description=""" Part 3 of Real-time threat Detection - Integrate with Kafka, run diff --git a/notebooks/notebook-basics/meta.toml b/notebooks/notebook-basics/meta.toml index b1fbea01..9e06e231 100644 --- a/notebooks/notebook-basics/meta.toml +++ b/notebooks/notebook-basics/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="SingleStoreDB Notebook Basics" description="""\ Foundational guide to notebooks with essential tips and tricks. \ diff --git a/notebooks/notebook-style-guide/meta.toml b/notebooks/notebook-style-guide/meta.toml index def37d71..8c613590 100644 --- a/notebooks/notebook-style-guide/meta.toml +++ b/notebooks/notebook-style-guide/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Notebook Style Guide" description="Become a pro at formatting and organizing your notebooks." icon="link" diff --git a/notebooks/optimize-performance-with-tpch-100/meta.toml b/notebooks/optimize-performance-with-tpch-100/meta.toml index 07ffa5f8..f9699da3 100644 --- a/notebooks/optimize-performance-with-tpch-100/meta.toml +++ b/notebooks/optimize-performance-with-tpch-100/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Learn how to Optimize Performance with TPCH 100" description="""\ This notebook will help you understand how you can take advantage of SingleStoreDB distributed capability using TPCH-100. diff --git a/notebooks/performance-troubleshooting/meta.toml b/notebooks/performance-troubleshooting/meta.toml index 2cd03e2d..133921ae 100644 --- a/notebooks/performance-troubleshooting/meta.toml +++ b/notebooks/performance-troubleshooting/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Database Performance Troubleshoot Notebook" description="""\ This notebook will help you perform database performance troubleshoot diff --git a/notebooks/pipelines-query-tuning/meta.toml b/notebooks/pipelines-query-tuning/meta.toml index 8c3cfdc4..658629f9 100644 --- a/notebooks/pipelines-query-tuning/meta.toml +++ b/notebooks/pipelines-query-tuning/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Kafka Pipelines and Query Tuning" description="""\ Create a SingleStore pipeline to track the International Space Station and adjust queries & schema to optimize performance. diff --git a/notebooks/rag-with-bedrock/meta.toml b/notebooks/rag-with-bedrock/meta.toml index 3b7c97bd..8bfded89 100644 --- a/notebooks/rag-with-bedrock/meta.toml +++ b/notebooks/rag-with-bedrock/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Retrieval Augmented Question & Answering with Amazon Bedrock" description="""\ Infuse domain-specific knowledge from SingleStoreDB into generative AI models on Amazon Bedrock to showcase Question & Answering using RAG (retrieval-agumented generation) to improve the quality of responses.\ diff --git a/notebooks/real-time-anomaly-detection/meta.toml b/notebooks/real-time-anomaly-detection/meta.toml index e0025fd8..7438467c 100644 --- a/notebooks/real-time-anomaly-detection/meta.toml +++ b/notebooks/real-time-anomaly-detection/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Real-Time Anomaly Detection" description="""\ Real-time anomaly detection in IoT sensor data, harnessing the robust capabilities of SingleStoreDB and advanced analytical techniques. \ diff --git a/notebooks/real-time-recommendation-engine/meta.toml b/notebooks/real-time-recommendation-engine/meta.toml index 49fd9419..9e535e75 100644 --- a/notebooks/real-time-recommendation-engine/meta.toml +++ b/notebooks/real-time-recommendation-engine/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Real Time Recommendation Engine" description="""\ We demonstrate how to build and host a real-time recommendation engine for free with SingleStore. The notebook also leverages our new SingleStore Job Service to ensure that the latest data is ingested and used in providing recommendations.\ diff --git a/notebooks/representing-unstructured-data-as-vectors/meta.toml b/notebooks/representing-unstructured-data-as-vectors/meta.toml index 58d47201..507a53b5 100644 --- a/notebooks/representing-unstructured-data-as-vectors/meta.toml +++ b/notebooks/representing-unstructured-data-as-vectors/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Representing Unstructured Data as Vectors" description="Transforming unstructured data into vectors and representing them in a 3-dimensional space to find the distance between them using various techniques" difficulty="beginner" diff --git a/notebooks/restore-database-from-s3/meta.toml b/notebooks/restore-database-from-s3/meta.toml index e6f55575..cc4fd07a 100644 --- a/notebooks/restore-database-from-s3/meta.toml +++ b/notebooks/restore-database-from-s3/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title = "Restore Database from AWS S3" description = """\ This notebook will help you perform database restore from AWS S3. diff --git a/notebooks/resume-evaluator-ANN-index-search/meta.toml b/notebooks/resume-evaluator-ANN-index-search/meta.toml index 639c4349..eb1fb6ef 100644 --- a/notebooks/resume-evaluator-ANN-index-search/meta.toml +++ b/notebooks/resume-evaluator-ANN-index-search/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Resume Evaluator with Vector Index" description="""\ Resume Evaluator using vectors stored in SingleStore to find sutiable resume for your job description, with Indexed ANN search.\ diff --git a/notebooks/resume-evaluator/meta.toml b/notebooks/resume-evaluator/meta.toml index 3f033c40..de79f479 100644 --- a/notebooks/resume-evaluator/meta.toml +++ b/notebooks/resume-evaluator/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Resume Evaluator" description="""\ Resume Evaluator using vectors stored in SingleStore to find sutiable resume for your job description. \ diff --git a/notebooks/searching-all-of-wikipedia/meta.toml b/notebooks/searching-all-of-wikipedia/meta.toml index 4b07ffab..6c15bc63 100644 --- a/notebooks/searching-all-of-wikipedia/meta.toml +++ b/notebooks/searching-all-of-wikipedia/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title = "Searching all of Wikipedia" description = """\ Simulate searching through 10 million paragraphs in Wikipedia for information about video games, and generate answers using RAG! \ diff --git a/notebooks/semantic-search-with-hugging-face/meta.toml b/notebooks/semantic-search-with-hugging-face/meta.toml index daa5990f..2e7789bb 100644 --- a/notebooks/semantic-search-with-hugging-face/meta.toml +++ b/notebooks/semantic-search-with-hugging-face/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Semantic Search with Hugging Face Models and Datasets" description="""\ Use Hugging Face to create embeddings and run semantic search \ diff --git a/notebooks/semantic-search-with-openai-embedding-creation/meta.toml b/notebooks/semantic-search-with-openai-embedding-creation/meta.toml index 037d7b7e..70495a07 100644 --- a/notebooks/semantic-search-with-openai-embedding-creation/meta.toml +++ b/notebooks/semantic-search-with-openai-embedding-creation/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Semantic Search with OpenAI Embedding Creation" description="""\ Generate embeddings and run semantic search in your database in SQL. \ diff --git a/notebooks/semantic-search-with-openai-qa/meta.toml b/notebooks/semantic-search-with-openai-qa/meta.toml index a8e9085c..a00dffe7 100644 --- a/notebooks/semantic-search-with-openai-qa/meta.toml +++ b/notebooks/semantic-search-with-openai-qa/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Semantic Search with OpenAI QA" description="""\ Provide context to chatGPT using data stored in SingleStoreDB. \ diff --git a/notebooks/semantic-visualization-and-vector-datatype/meta.toml b/notebooks/semantic-visualization-and-vector-datatype/meta.toml index ed02602a..f1ee427e 100644 --- a/notebooks/semantic-visualization-and-vector-datatype/meta.toml +++ b/notebooks/semantic-visualization-and-vector-datatype/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Semantic Visualization and Vector Datatype" description="""\ SingleStoreDB leverages vector database processing to enable storage and search of vector data, allowing for semantic similarity-based searches to find content based on meaning rather than exact matches, such as locating related words like "happy" and "joyful." \ diff --git a/notebooks/similarity-search-on-vector-data/meta.toml b/notebooks/similarity-search-on-vector-data/meta.toml index 9f500c3c..1dc572a5 100644 --- a/notebooks/similarity-search-on-vector-data/meta.toml +++ b/notebooks/similarity-search-on-vector-data/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Similarity Search on Vector Data" description="Example of similarity searches over vector data." difficulty="beginner" diff --git a/notebooks/singlestore-april-challenge-haiku-ascii/meta.toml b/notebooks/singlestore-april-challenge-haiku-ascii/meta.toml index 48b7bf4c..a57a3333 100644 --- a/notebooks/singlestore-april-challenge-haiku-ascii/meta.toml +++ b/notebooks/singlestore-april-challenge-haiku-ascii/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="SingleStore April Challenge: Haiku ASCII" description="""\ SingleStore is hosting a challenge inviting participants to craft a unique Haiku or create captivating ASCII art using SingleStore Notebooks. The most creative masterpiece wins a set of Meta RayBan Smart sunglasses and a $500 AWS gift card!" \ diff --git a/notebooks/unified-data-analysis-sql-nosql-kai/meta.toml b/notebooks/unified-data-analysis-sql-nosql-kai/meta.toml index c3a4e1e0..a86b80a0 100644 --- a/notebooks/unified-data-analysis-sql-nosql-kai/meta.toml +++ b/notebooks/unified-data-analysis-sql-nosql-kai/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Unified Data Analysis: SQL & NoSQL on a Single Database with Kai" description="""\ Perform both SQL and NoSQL queries on multi-modal relational and JSON data \ diff --git a/notebooks/vector-database-basics/meta.toml b/notebooks/vector-database-basics/meta.toml index 9e0ba0f0..d7ef9bfa 100644 --- a/notebooks/vector-database-basics/meta.toml +++ b/notebooks/vector-database-basics/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="A Deep Dive Into Vector Databases" description="Using SingleStoreDB as a vector database and vector database use cases." difficulty="beginner" diff --git a/notebooks/vector-search-with-kai/meta.toml b/notebooks/vector-search-with-kai/meta.toml index 69fcf2e4..c0e9089e 100644 --- a/notebooks/vector-search-with-kai/meta.toml +++ b/notebooks/vector-search-with-kai/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title = "Vector Search with Kai" description = """ Run Vector Search using MongoDB clients and power GenAI usecases for your MongoDB applications """ diff --git a/notebooks/working-with-vector-data/meta.toml b/notebooks/working-with-vector-data/meta.toml index b2888def..0e56c938 100644 --- a/notebooks/working-with-vector-data/meta.toml +++ b/notebooks/working-with-vector-data/meta.toml @@ -1,4 +1,5 @@ [meta] +author="singlestore" title="Working with Vector Data" description="""\ This example demonstrates the various ways to upload and download From ceb2a1006fddc939e10b98c49a31df6aaf433931 Mon Sep 17 00:00:00 2001 From: Francisco Silva Date: Wed, 12 Jun 2024 17:11:48 +0100 Subject: [PATCH 02/18] add singlestore author information --- authors/singlestore.toml | 3 +++ common/images/author-images/singlestore.png | Bin 0 -> 2137 bytes 2 files changed, 3 insertions(+) create mode 100644 authors/singlestore.toml create mode 100644 common/images/author-images/singlestore.png diff --git a/authors/singlestore.toml b/authors/singlestore.toml new file mode 100644 index 00000000..f42be42b --- /dev/null +++ b/authors/singlestore.toml @@ -0,0 +1,3 @@ +name="SingleStore" +description="Engineering Team" +logo="singlestore" \ No newline at end of file diff --git a/common/images/author-images/singlestore.png b/common/images/author-images/singlestore.png new file mode 100644 index 0000000000000000000000000000000000000000..3ed9c267e085893100cb9ebeff54781f08a28779 GIT binary patch literal 2137 zcmV-f2&VUmP)pBqK`{w>9RDh`fIv^bY6%Z-_Dj-ylyb6*Ipo2gKKn3Pi0925tV|?yx)+<>~oWMOZ zI}rIp`>l;u`6b&&5oj3bIM6};c~Jk=cnkDV|9uVgQq!CKg%}2!1}XzBHzd4cR=@K{ z16I8a^e&qVol?eyG`;6ru?xX1VXle%07YEMZUv8d#LiI!TFCba?kS>>9bqG@-{0Ra z$K!Eh{QCNOIh{`bd>#&m%fVpKH7u^BBmR+YK-?j_587@F0#xMT;NYM!Rusj`=eM^v z2?~**FgZIrlMD=M{%)lMx+q{K9W)HaZ*QBte13k){{DVr{OIVY5}LsOqtU3k|Mc`! zI$&J$+AE%=qpQQ60qe$a|L5oD#{C$B+v_nr`~LpE4Bk8xdcrI< z5tu?;TR|ZVfY{dK!K%x$EF13uD5$;{0_(Z(EP(Nh9I>${+_p?mSrnK|CXH)gRto?M z@m$@n$BvJW8)H&?g|#-7;3+Xe6Il~iITOGNw2F0MDo0z2!fI>dIU5!j^Ms@V^z#{> z(0O$zq{C82cL!sd888XxWshS}1ji624-XG3@0`!)%h_z!mk)mT?W(1jSI$76+4-Ib64&t%9_N zaLncy&5u^7q(dQD#7#0@vZ4eVdtNBO!mt!SW7*WMtliy9epq2V>#{EJyfMN5SQ6IH zPJA&Xc%cC6=rBMcql?=m5ZAP@vATgPhYbnv0%a$PrKlH-V!|T%c;ghzD#3;VW0i?c zSA%*9w8;;Dt&rqL7eZQa0{;k*Lox@k1;&wg-=aY9=P`|A_+n081Qnq+cqtpL-0-*0KB5YBu|;)_wY-;wvN!Z zbAioDZg8HQoHRBsKR!O>^769!ANzRttoQc%L=Z}XHLLwY?ki%h$H&KY=S1(ZTmO!U z2HJ+3*{`5|B)%BI(w=p7@+D>RQOdTM-6f?GAQ4OCzr_JuEtIO&mNZ=2B3S;1Y{D44hK2s})VJ_@4*eY^wo3(KiQKYJ zP_>;4iMTy2kBK0hmuO;wg8_V%-Bf73DZ=DyH)mS5zfuI*E0i&f$4bhS#Z#LYT?v9g z@i2yNjI?deWKbyz(_DtyTpd=|7J&j|yUICpL5X+=Ju9I1`B_i2%|mym)%iXO>b2(BP|^9JB?O0J;5J3P?JvNFhS$BZ2OJ;(JxAvg zBsPpQ?=Z=-uc%iQ#y{@!1k}4!iG*B=gRytB?(}eCFrk|gwz)~g>86Hldgy+j?iE5A zdLNI<*O@%kpCq+(iZ46`3}Rlul2Z$=h4hvgyF}qx+Yh7%=w2b0Uv7a@arW#%sz2F6 z$+H6E*n`&Pnd!Zl_PRH^yGx-&g@*13aX-%rYYQxfNJk}1C4s0HXo6+w5%wCBkyaSH zOZpz&LdSdbb?;~mR{`s7vHqmQW519VT&G@wNpwE2Az_y(sa;%$11zU4%n;KG0_;&3 zFBEu@Qh6BP#D^RW|Y5gN;em`jT%utc>=@D4cGB~UBT#;|w7jB_H4 zGV1-g^n}*K(ky#pl^<#7oC+0bo*bi~`e;o@>g}*JG4H}a?4+k%0!jAdm?$sOOJpX^ zB@gdoj30095`}Ev zBYvdd9)|L@6!oDDykja``tkHH***&S>OF#vB=6_*|H)V1?oqb<^ZEY)OEn9f7`+x= P00000NkvXXu0mjf-3stz literal 0 HcmV?d00001 From dd9be0ee68b528c623c96d4f655cc89697c0c225 Mon Sep 17 00:00:00 2001 From: Francisco Silva Date: Wed, 12 Jun 2024 17:20:32 +0100 Subject: [PATCH 03/18] support multiple authors --- notebooks/atlas-and-kai/meta.toml | 2 +- notebooks/backup-database-s3/meta.toml | 2 +- notebooks/building-a-multi-agent-ai-app-with-autogen/meta.toml | 2 +- notebooks/cdc-mongodb-sql-commands/meta.toml | 2 +- notebooks/confluent-cloud-integration/meta.toml | 2 +- notebooks/evaluating-llms-with-uptrain/meta.toml | 2 +- notebooks/getting-started-with-dataframes/meta.toml | 2 +- notebooks/getting-started-with-fusion-sql/meta.toml | 2 +- notebooks/getting-started-with-mongocdc/meta.toml | 2 +- notebooks/getting-started-with-notebooks/meta.toml | 2 +- .../how-to-build-llm-apps-that-can-see-hear-speak/meta.toml | 2 +- notebooks/hybrid-full-text-vector-search/meta.toml | 2 +- notebooks/hybrid-search/meta.toml | 2 +- notebooks/image-matching-with-sql/meta.toml | 2 +- notebooks/ingest-pdfs-with-unstructured/meta.toml | 2 +- .../meta.toml | 2 +- notebooks/insure-gpt-demo/meta.toml | 2 +- notebooks/integrating-with-pandas/meta.toml | 2 +- notebooks/kebab-case/meta.toml | 2 +- notebooks/launch-open-source-apps-with-langchain/meta.toml | 2 +- notebooks/load-json-files-s3/meta.toml | 2 +- notebooks/load-s3-files-into-shared-tier/meta.toml | 2 +- notebooks/managing-stage-files-with-fusion-sql/meta.toml | 2 +- notebooks/movie-recommendation/meta.toml | 2 +- notebooks/network-intrusion-detection-part-1/meta.toml | 2 +- notebooks/network-intrusion-detection-part-2/meta.toml | 2 +- notebooks/network-intrusion-detection-part-3/meta.toml | 2 +- notebooks/notebook-basics/meta.toml | 2 +- notebooks/notebook-style-guide/meta.toml | 2 +- notebooks/optimize-performance-with-tpch-100/meta.toml | 2 +- notebooks/performance-troubleshooting/meta.toml | 2 +- notebooks/pipelines-query-tuning/meta.toml | 2 +- notebooks/rag-with-bedrock/meta.toml | 2 +- notebooks/real-time-anomaly-detection/meta.toml | 2 +- notebooks/real-time-recommendation-engine/meta.toml | 2 +- notebooks/representing-unstructured-data-as-vectors/meta.toml | 2 +- notebooks/restore-database-from-s3/meta.toml | 2 +- notebooks/resume-evaluator-ANN-index-search/meta.toml | 2 +- notebooks/resume-evaluator/meta.toml | 2 +- notebooks/searching-all-of-wikipedia/meta.toml | 2 +- notebooks/semantic-search-with-hugging-face/meta.toml | 2 +- .../semantic-search-with-openai-embedding-creation/meta.toml | 2 +- notebooks/semantic-search-with-openai-qa/meta.toml | 2 +- notebooks/semantic-visualization-and-vector-datatype/meta.toml | 2 +- notebooks/similarity-search-on-vector-data/meta.toml | 2 +- notebooks/singlestore-april-challenge-haiku-ascii/meta.toml | 2 +- notebooks/unified-data-analysis-sql-nosql-kai/meta.toml | 2 +- notebooks/vector-database-basics/meta.toml | 2 +- notebooks/vector-search-with-kai/meta.toml | 2 +- notebooks/working-with-vector-data/meta.toml | 2 +- 50 files changed, 50 insertions(+), 50 deletions(-) diff --git a/notebooks/atlas-and-kai/meta.toml b/notebooks/atlas-and-kai/meta.toml index 804cb52a..a8c57b42 100644 --- a/notebooks/atlas-and-kai/meta.toml +++ b/notebooks/atlas-and-kai/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Mongo Atlas & SingleStore Kai" description="""\ Run your MongoDB queries on SingleStore Kai with no code change. \ diff --git a/notebooks/backup-database-s3/meta.toml b/notebooks/backup-database-s3/meta.toml index 675a8a8c..2ec6af9a 100644 --- a/notebooks/backup-database-s3/meta.toml +++ b/notebooks/backup-database-s3/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title = "Backup Database to AWS S3" description = """\ Performs backup either single or multiple databases to AWS S3. \ diff --git a/notebooks/building-a-multi-agent-ai-app-with-autogen/meta.toml b/notebooks/building-a-multi-agent-ai-app-with-autogen/meta.toml index 92339087..a0a71506 100644 --- a/notebooks/building-a-multi-agent-ai-app-with-autogen/meta.toml +++ b/notebooks/building-a-multi-agent-ai-app-with-autogen/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="How to Build a Multi-Agent AI App with AutoGen" description="""\ Learn how to build a multi-agent group chat with RAG using Autogen and SingleStore \ diff --git a/notebooks/cdc-mongodb-sql-commands/meta.toml b/notebooks/cdc-mongodb-sql-commands/meta.toml index f413fccb..b0ef1f48 100644 --- a/notebooks/cdc-mongodb-sql-commands/meta.toml +++ b/notebooks/cdc-mongodb-sql-commands/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title = "Ingest data from MONGODB® to SingleStore using SQL commands" description = """ Setup CDC Replication from MongoDB® to SingleStore using SQL commands. """ diff --git a/notebooks/confluent-cloud-integration/meta.toml b/notebooks/confluent-cloud-integration/meta.toml index bbe0cdd7..19ff8807 100644 --- a/notebooks/confluent-cloud-integration/meta.toml +++ b/notebooks/confluent-cloud-integration/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title = "Ingest data from Confluent Cloud (Kafka)" description = """ A step-by-step guide on seamlessly ingesting data from Confluent Cloud (Kafka) into your SingleStoreDB database using a robust pipeline. """ diff --git a/notebooks/evaluating-llms-with-uptrain/meta.toml b/notebooks/evaluating-llms-with-uptrain/meta.toml index 69b703e3..2262fcf0 100644 --- a/notebooks/evaluating-llms-with-uptrain/meta.toml +++ b/notebooks/evaluating-llms-with-uptrain/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Evaluating LLMs with Uptrain" description="""\ Using Uptrain to evaluate LLMs built with SingleStore as the contextual store. This notebook uses OpenAI embedding models and Langchain as a development framework. diff --git a/notebooks/getting-started-with-dataframes/meta.toml b/notebooks/getting-started-with-dataframes/meta.toml index d123f3d5..fc321a15 100644 --- a/notebooks/getting-started-with-dataframes/meta.toml +++ b/notebooks/getting-started-with-dataframes/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Getting Started with DataFrames in SingleStoreDB" description="""\ Data in SingleStoreDB can be queried and modified using a diff --git a/notebooks/getting-started-with-fusion-sql/meta.toml b/notebooks/getting-started-with-fusion-sql/meta.toml index efe83692..a6aea7c5 100644 --- a/notebooks/getting-started-with-fusion-sql/meta.toml +++ b/notebooks/getting-started-with-fusion-sql/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Getting Started with Fusion SQL" description="""\ Fusion SQL allows you to manage your SingleStoreDB Cloud diff --git a/notebooks/getting-started-with-mongocdc/meta.toml b/notebooks/getting-started-with-mongocdc/meta.toml index 8fca56df..7aebe15b 100644 --- a/notebooks/getting-started-with-mongocdc/meta.toml +++ b/notebooks/getting-started-with-mongocdc/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Getting Started With CDC Replication from MongoDB" description="""\ Setup Zero ETL data replication from MongoDB to SingleStore \ diff --git a/notebooks/getting-started-with-notebooks/meta.toml b/notebooks/getting-started-with-notebooks/meta.toml index a24c49af..9715884d 100644 --- a/notebooks/getting-started-with-notebooks/meta.toml +++ b/notebooks/getting-started-with-notebooks/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Getting Started with Notebooks" description="""\ SingleStore Notebooks with an AI Copilot (SQrL) for data prototyping, \ diff --git a/notebooks/how-to-build-llm-apps-that-can-see-hear-speak/meta.toml b/notebooks/how-to-build-llm-apps-that-can-see-hear-speak/meta.toml index 81826f43..e210aa51 100644 --- a/notebooks/how-to-build-llm-apps-that-can-see-hear-speak/meta.toml +++ b/notebooks/how-to-build-llm-apps-that-can-see-hear-speak/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="How to Build LLM Apps that can See Hear Speak" description="""\ Using OpenAI to build an app that can take images, audio, and text data to generate output diff --git a/notebooks/hybrid-full-text-vector-search/meta.toml b/notebooks/hybrid-full-text-vector-search/meta.toml index b954512b..c2882029 100644 --- a/notebooks/hybrid-full-text-vector-search/meta.toml +++ b/notebooks/hybrid-full-text-vector-search/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Hybrid Full-text and Vector Search" description="Example of similarity search over vector data and a hybrid search that combines full-text search with an indexed vector search." difficulty="intermediate" diff --git a/notebooks/hybrid-search/meta.toml b/notebooks/hybrid-search/meta.toml index 32acc221..08de5733 100644 --- a/notebooks/hybrid-search/meta.toml +++ b/notebooks/hybrid-search/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Hybrid Search" description="""\ Hybrid search combines keyword search with semantic search, diff --git a/notebooks/image-matching-with-sql/meta.toml b/notebooks/image-matching-with-sql/meta.toml index 777ca340..32632917 100644 --- a/notebooks/image-matching-with-sql/meta.toml +++ b/notebooks/image-matching-with-sql/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Image Matching with SQL" description="""\ Facial recognition using dot_product function on vectors stored in SingleStoreDB. \ diff --git a/notebooks/ingest-pdfs-with-unstructured/meta.toml b/notebooks/ingest-pdfs-with-unstructured/meta.toml index a757a1e2..9520a92c 100644 --- a/notebooks/ingest-pdfs-with-unstructured/meta.toml +++ b/notebooks/ingest-pdfs-with-unstructured/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Ask questions of your PDFs with Unstructured" description="Ask questions of your unstructured PDFs. In this notebook, Unstructured.io ingests pdfs accurately, then Open AI is used to create embeddings, the vector data is stored in SingleStore and finally ask questions of your PDF data" icon="file-export" diff --git a/notebooks/inserting-embeddings-from-multiple-models-into-singlestore-using-external-functions/meta.toml b/notebooks/inserting-embeddings-from-multiple-models-into-singlestore-using-external-functions/meta.toml index 4d9bb0fc..f372e302 100644 --- a/notebooks/inserting-embeddings-from-multiple-models-into-singlestore-using-external-functions/meta.toml +++ b/notebooks/inserting-embeddings-from-multiple-models-into-singlestore-using-external-functions/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Inserting embeddings from multiple models into SingleStore Using External Functions" description="""\ Discover the power of SingleStoreDB's external functions to dynamically fetch and store vector embeddings from leading AI models into your database. This demo highlights leveraging SingleStore's robust vector data type and external functions for efficient management and analysis of machine learning embeddings.\ diff --git a/notebooks/insure-gpt-demo/meta.toml b/notebooks/insure-gpt-demo/meta.toml index a9a230c0..253e4e9c 100644 --- a/notebooks/insure-gpt-demo/meta.toml +++ b/notebooks/insure-gpt-demo/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="InsureGPT: OpenAI and SingleStore for Insurance" description="Creating an insurance analysis with OpenAI and vectorizing the results into SingleStore." difficulty="intermediate" diff --git a/notebooks/integrating-with-pandas/meta.toml b/notebooks/integrating-with-pandas/meta.toml index 13666983..6ba6f756 100644 --- a/notebooks/integrating-with-pandas/meta.toml +++ b/notebooks/integrating-with-pandas/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Integrating pandas with SingleStoreDB" description="""\ Moving data to and from pandas DataFrames is demonstrated using diff --git a/notebooks/kebab-case/meta.toml b/notebooks/kebab-case/meta.toml index 2cc8ea3f..e88dae5e 100644 --- a/notebooks/kebab-case/meta.toml +++ b/notebooks/kebab-case/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Automatically warm up your disk after resuming workspace" description="""\ Runs through the queries to bring data residing in object storage onto disk for a specified database. \ diff --git a/notebooks/launch-open-source-apps-with-langchain/meta.toml b/notebooks/launch-open-source-apps-with-langchain/meta.toml index e688915a..6bcfd6e8 100644 --- a/notebooks/launch-open-source-apps-with-langchain/meta.toml +++ b/notebooks/launch-open-source-apps-with-langchain/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Launch Open-Source Apps with LangChain" description="""\ LangChain connector to use SingleStoreDB as your vector database for your apps. \ diff --git a/notebooks/load-json-files-s3/meta.toml b/notebooks/load-json-files-s3/meta.toml index 9390369d..bd394bec 100644 --- a/notebooks/load-json-files-s3/meta.toml +++ b/notebooks/load-json-files-s3/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Load JSON files with Pipeline from S3" description="""\ This notebook will help you load JSON files from a public open AWS S3 bucket. diff --git a/notebooks/load-s3-files-into-shared-tier/meta.toml b/notebooks/load-s3-files-into-shared-tier/meta.toml index 9510b68f..7fe8c856 100644 --- a/notebooks/load-s3-files-into-shared-tier/meta.toml +++ b/notebooks/load-s3-files-into-shared-tier/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Load files from S3 into Shared Tier" description="""\ This notebook guides you through data ingestion of CSV files from an AWS S3 location into your shared tier workspace. \ diff --git a/notebooks/managing-stage-files-with-fusion-sql/meta.toml b/notebooks/managing-stage-files-with-fusion-sql/meta.toml index de94e40e..7fa655b0 100644 --- a/notebooks/managing-stage-files-with-fusion-sql/meta.toml +++ b/notebooks/managing-stage-files-with-fusion-sql/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Managing Stage files with Fusion SQL" description="""\ Learn how to manage your Stage files in SingleStoreDB diff --git a/notebooks/movie-recommendation/meta.toml b/notebooks/movie-recommendation/meta.toml index 56a13d20..f2577a16 100644 --- a/notebooks/movie-recommendation/meta.toml +++ b/notebooks/movie-recommendation/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Movie Recommendation" description="""\ Movie recommendation engine using vectors stored in SingleStore to find your next watch. \ diff --git a/notebooks/network-intrusion-detection-part-1/meta.toml b/notebooks/network-intrusion-detection-part-1/meta.toml index 72b4ced8..d37869c2 100644 --- a/notebooks/network-intrusion-detection-part-1/meta.toml +++ b/notebooks/network-intrusion-detection-part-1/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="IT Threat Detection, Part 1" description=""" Part 1 or Real-time threat Detection - This notebook demonstrates the diff --git a/notebooks/network-intrusion-detection-part-2/meta.toml b/notebooks/network-intrusion-detection-part-2/meta.toml index a6d60c33..fac15666 100644 --- a/notebooks/network-intrusion-detection-part-2/meta.toml +++ b/notebooks/network-intrusion-detection-part-2/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="IT Threat Detection, Part 2" description="""\ Part 2 or Real-time threat Detection - Validate the accuracy of the diff --git a/notebooks/network-intrusion-detection-part-3/meta.toml b/notebooks/network-intrusion-detection-part-3/meta.toml index 4642d464..43cf3b9d 100644 --- a/notebooks/network-intrusion-detection-part-3/meta.toml +++ b/notebooks/network-intrusion-detection-part-3/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="IT Threat Detection, Part 3" description=""" Part 3 of Real-time threat Detection - Integrate with Kafka, run diff --git a/notebooks/notebook-basics/meta.toml b/notebooks/notebook-basics/meta.toml index 9e06e231..717bde03 100644 --- a/notebooks/notebook-basics/meta.toml +++ b/notebooks/notebook-basics/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="SingleStoreDB Notebook Basics" description="""\ Foundational guide to notebooks with essential tips and tricks. \ diff --git a/notebooks/notebook-style-guide/meta.toml b/notebooks/notebook-style-guide/meta.toml index 8c613590..b1ad155d 100644 --- a/notebooks/notebook-style-guide/meta.toml +++ b/notebooks/notebook-style-guide/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Notebook Style Guide" description="Become a pro at formatting and organizing your notebooks." icon="link" diff --git a/notebooks/optimize-performance-with-tpch-100/meta.toml b/notebooks/optimize-performance-with-tpch-100/meta.toml index f9699da3..f543eecb 100644 --- a/notebooks/optimize-performance-with-tpch-100/meta.toml +++ b/notebooks/optimize-performance-with-tpch-100/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Learn how to Optimize Performance with TPCH 100" description="""\ This notebook will help you understand how you can take advantage of SingleStoreDB distributed capability using TPCH-100. diff --git a/notebooks/performance-troubleshooting/meta.toml b/notebooks/performance-troubleshooting/meta.toml index 133921ae..12b9c7b0 100644 --- a/notebooks/performance-troubleshooting/meta.toml +++ b/notebooks/performance-troubleshooting/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Database Performance Troubleshoot Notebook" description="""\ This notebook will help you perform database performance troubleshoot diff --git a/notebooks/pipelines-query-tuning/meta.toml b/notebooks/pipelines-query-tuning/meta.toml index 658629f9..daf471b5 100644 --- a/notebooks/pipelines-query-tuning/meta.toml +++ b/notebooks/pipelines-query-tuning/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Kafka Pipelines and Query Tuning" description="""\ Create a SingleStore pipeline to track the International Space Station and adjust queries & schema to optimize performance. diff --git a/notebooks/rag-with-bedrock/meta.toml b/notebooks/rag-with-bedrock/meta.toml index 8bfded89..e3c9e82f 100644 --- a/notebooks/rag-with-bedrock/meta.toml +++ b/notebooks/rag-with-bedrock/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Retrieval Augmented Question & Answering with Amazon Bedrock" description="""\ Infuse domain-specific knowledge from SingleStoreDB into generative AI models on Amazon Bedrock to showcase Question & Answering using RAG (retrieval-agumented generation) to improve the quality of responses.\ diff --git a/notebooks/real-time-anomaly-detection/meta.toml b/notebooks/real-time-anomaly-detection/meta.toml index 7438467c..8f80cb2e 100644 --- a/notebooks/real-time-anomaly-detection/meta.toml +++ b/notebooks/real-time-anomaly-detection/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Real-Time Anomaly Detection" description="""\ Real-time anomaly detection in IoT sensor data, harnessing the robust capabilities of SingleStoreDB and advanced analytical techniques. \ diff --git a/notebooks/real-time-recommendation-engine/meta.toml b/notebooks/real-time-recommendation-engine/meta.toml index 9e535e75..c079f7cc 100644 --- a/notebooks/real-time-recommendation-engine/meta.toml +++ b/notebooks/real-time-recommendation-engine/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Real Time Recommendation Engine" description="""\ We demonstrate how to build and host a real-time recommendation engine for free with SingleStore. The notebook also leverages our new SingleStore Job Service to ensure that the latest data is ingested and used in providing recommendations.\ diff --git a/notebooks/representing-unstructured-data-as-vectors/meta.toml b/notebooks/representing-unstructured-data-as-vectors/meta.toml index 507a53b5..d0e115e6 100644 --- a/notebooks/representing-unstructured-data-as-vectors/meta.toml +++ b/notebooks/representing-unstructured-data-as-vectors/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Representing Unstructured Data as Vectors" description="Transforming unstructured data into vectors and representing them in a 3-dimensional space to find the distance between them using various techniques" difficulty="beginner" diff --git a/notebooks/restore-database-from-s3/meta.toml b/notebooks/restore-database-from-s3/meta.toml index cc4fd07a..2b018e8a 100644 --- a/notebooks/restore-database-from-s3/meta.toml +++ b/notebooks/restore-database-from-s3/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title = "Restore Database from AWS S3" description = """\ This notebook will help you perform database restore from AWS S3. diff --git a/notebooks/resume-evaluator-ANN-index-search/meta.toml b/notebooks/resume-evaluator-ANN-index-search/meta.toml index eb1fb6ef..802f5e8b 100644 --- a/notebooks/resume-evaluator-ANN-index-search/meta.toml +++ b/notebooks/resume-evaluator-ANN-index-search/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Resume Evaluator with Vector Index" description="""\ Resume Evaluator using vectors stored in SingleStore to find sutiable resume for your job description, with Indexed ANN search.\ diff --git a/notebooks/resume-evaluator/meta.toml b/notebooks/resume-evaluator/meta.toml index de79f479..5e35a164 100644 --- a/notebooks/resume-evaluator/meta.toml +++ b/notebooks/resume-evaluator/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Resume Evaluator" description="""\ Resume Evaluator using vectors stored in SingleStore to find sutiable resume for your job description. \ diff --git a/notebooks/searching-all-of-wikipedia/meta.toml b/notebooks/searching-all-of-wikipedia/meta.toml index 6c15bc63..8df63676 100644 --- a/notebooks/searching-all-of-wikipedia/meta.toml +++ b/notebooks/searching-all-of-wikipedia/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title = "Searching all of Wikipedia" description = """\ Simulate searching through 10 million paragraphs in Wikipedia for information about video games, and generate answers using RAG! \ diff --git a/notebooks/semantic-search-with-hugging-face/meta.toml b/notebooks/semantic-search-with-hugging-face/meta.toml index 2e7789bb..dd30c171 100644 --- a/notebooks/semantic-search-with-hugging-face/meta.toml +++ b/notebooks/semantic-search-with-hugging-face/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Semantic Search with Hugging Face Models and Datasets" description="""\ Use Hugging Face to create embeddings and run semantic search \ diff --git a/notebooks/semantic-search-with-openai-embedding-creation/meta.toml b/notebooks/semantic-search-with-openai-embedding-creation/meta.toml index 70495a07..40bb9e2d 100644 --- a/notebooks/semantic-search-with-openai-embedding-creation/meta.toml +++ b/notebooks/semantic-search-with-openai-embedding-creation/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Semantic Search with OpenAI Embedding Creation" description="""\ Generate embeddings and run semantic search in your database in SQL. \ diff --git a/notebooks/semantic-search-with-openai-qa/meta.toml b/notebooks/semantic-search-with-openai-qa/meta.toml index a00dffe7..7414cc7c 100644 --- a/notebooks/semantic-search-with-openai-qa/meta.toml +++ b/notebooks/semantic-search-with-openai-qa/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Semantic Search with OpenAI QA" description="""\ Provide context to chatGPT using data stored in SingleStoreDB. \ diff --git a/notebooks/semantic-visualization-and-vector-datatype/meta.toml b/notebooks/semantic-visualization-and-vector-datatype/meta.toml index f1ee427e..d8c0b5c4 100644 --- a/notebooks/semantic-visualization-and-vector-datatype/meta.toml +++ b/notebooks/semantic-visualization-and-vector-datatype/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Semantic Visualization and Vector Datatype" description="""\ SingleStoreDB leverages vector database processing to enable storage and search of vector data, allowing for semantic similarity-based searches to find content based on meaning rather than exact matches, such as locating related words like "happy" and "joyful." \ diff --git a/notebooks/similarity-search-on-vector-data/meta.toml b/notebooks/similarity-search-on-vector-data/meta.toml index 1dc572a5..fd7ff755 100644 --- a/notebooks/similarity-search-on-vector-data/meta.toml +++ b/notebooks/similarity-search-on-vector-data/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Similarity Search on Vector Data" description="Example of similarity searches over vector data." difficulty="beginner" diff --git a/notebooks/singlestore-april-challenge-haiku-ascii/meta.toml b/notebooks/singlestore-april-challenge-haiku-ascii/meta.toml index a57a3333..8b76f7ec 100644 --- a/notebooks/singlestore-april-challenge-haiku-ascii/meta.toml +++ b/notebooks/singlestore-april-challenge-haiku-ascii/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="SingleStore April Challenge: Haiku ASCII" description="""\ SingleStore is hosting a challenge inviting participants to craft a unique Haiku or create captivating ASCII art using SingleStore Notebooks. The most creative masterpiece wins a set of Meta RayBan Smart sunglasses and a $500 AWS gift card!" \ diff --git a/notebooks/unified-data-analysis-sql-nosql-kai/meta.toml b/notebooks/unified-data-analysis-sql-nosql-kai/meta.toml index a86b80a0..1923ff48 100644 --- a/notebooks/unified-data-analysis-sql-nosql-kai/meta.toml +++ b/notebooks/unified-data-analysis-sql-nosql-kai/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Unified Data Analysis: SQL & NoSQL on a Single Database with Kai" description="""\ Perform both SQL and NoSQL queries on multi-modal relational and JSON data \ diff --git a/notebooks/vector-database-basics/meta.toml b/notebooks/vector-database-basics/meta.toml index d7ef9bfa..75859e60 100644 --- a/notebooks/vector-database-basics/meta.toml +++ b/notebooks/vector-database-basics/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="A Deep Dive Into Vector Databases" description="Using SingleStoreDB as a vector database and vector database use cases." difficulty="beginner" diff --git a/notebooks/vector-search-with-kai/meta.toml b/notebooks/vector-search-with-kai/meta.toml index c0e9089e..8f435cfd 100644 --- a/notebooks/vector-search-with-kai/meta.toml +++ b/notebooks/vector-search-with-kai/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title = "Vector Search with Kai" description = """ Run Vector Search using MongoDB clients and power GenAI usecases for your MongoDB applications """ diff --git a/notebooks/working-with-vector-data/meta.toml b/notebooks/working-with-vector-data/meta.toml index 0e56c938..b8f59dce 100644 --- a/notebooks/working-with-vector-data/meta.toml +++ b/notebooks/working-with-vector-data/meta.toml @@ -1,5 +1,5 @@ [meta] -author="singlestore" +authors=["singlestore"] title="Working with Vector Data" description="""\ This example demonstrates the various ways to upload and download From 67db608b098a357651138af437f437e33177f262 Mon Sep 17 00:00:00 2001 From: Francisco Silva Date: Fri, 14 Jun 2024 16:17:01 +0100 Subject: [PATCH 04/18] add toml checks --- .pre-commit-config.yaml | 5 +++++ resources/author-check.py | 31 +++++++++++++++++++++++++++++++ resources/toml-check.py | 10 ++++++++++ 3 files changed, 46 insertions(+) create mode 100644 resources/author-check.py diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 87836315..81461816 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -59,3 +59,8 @@ repos: entry: resources/lesson-check.py language: system files: lessons/.*\.toml + - id: author-check + name: author-check + entry: resources/author-check.py + language: system + files: authors/*.toml diff --git a/resources/author-check.py b/resources/author-check.py new file mode 100644 index 00000000..9b9d88cb --- /dev/null +++ b/resources/author-check.py @@ -0,0 +1,31 @@ +#!/usr/bin/env python3 +import os +import sys +import tomllib + +def error(msg): + print('ERROR:', msg, file=sys.stderr) + sys.exit(1) + +def check_author(author_path): + print(f"Checking {author_path}...") + + with open(author_path, 'rb') as f: + meta = tomllib.load(f) + + if 'name' not in meta: + error(f'No `name` in `meta` section of {author_path}') + + if 'description' not in meta: + error(f'No `description` in `meta` section of {author_path}') + + # Logo is optional, but if defined a corresponding image must exist + if 'logo' in meta: + logo_filename = f"{meta['logo']}.png" + logo_path = os.path.join("common/images/author-images", logo_filename) + if not os.path.isfile(logo_path): + error(f'Logo image does not exist at {logo_path} for {author_path}') + +if __name__ == '__main__': + for f in sys.argv[1:]: + check_author(f) diff --git a/resources/toml-check.py b/resources/toml-check.py index 6c60a60e..3a6ac40c 100755 --- a/resources/toml-check.py +++ b/resources/toml-check.py @@ -32,6 +32,9 @@ def error(msg): if 'description' not in meta: error(f'No `description` in `meta` section of {f}') + if 'authors' not in meta or not meta['authors']: + error(f'No `authors` in `meta` section of {f}') + if 'icon' not in meta: error(f'No `icon` in `meta` section of {f}') @@ -85,3 +88,10 @@ def error(msg): error(f'Lesson area {lesson_area} not found in card icons') if expected_icon_name not in preview_icons: error(f'Lesson area {lesson_area} not found in preview icons') + + # Authors must have a corresponding author entry + author_meta_files = os.listdir("authors") + for author in meta['authors']: + author_filename = f"{author}.toml" + if author_filename not in author_meta_files: + error(f'Author {author} does not have a corresponding author entry in {f}') From 3d2103b675b4249a62a071a40eed2f9cf4bae202 Mon Sep 17 00:00:00 2001 From: Francisco Silva Date: Fri, 14 Jun 2024 16:19:43 +0100 Subject: [PATCH 05/18] add missing escape --- .pre-commit-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 81461816..00384468 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -63,4 +63,4 @@ repos: name: author-check entry: resources/author-check.py language: system - files: authors/*.toml + files: authors/*\.toml From 432446e4e3acd896fee540964ead695348904ea5 Mon Sep 17 00:00:00 2001 From: Francisco Silva Date: Fri, 14 Jun 2024 16:24:54 +0100 Subject: [PATCH 06/18] fix resources check checking authors --- .pre-commit-config.yaml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 00384468..7cb6797c 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -52,8 +52,7 @@ repos: name: toml-check entry: resources/toml-check.py language: system - files: \.toml$ - exclude: "lessons/.*|^meta.toml" + files: notebooks/.*/meta\.toml - id: lesson-check name: lesson-check entry: resources/lesson-check.py From 3ec0f49c854a87c9c7ef1a437ed7f6849d4387a9 Mon Sep 17 00:00:00 2001 From: Francisco Silva Date: Fri, 14 Jun 2024 16:27:27 +0100 Subject: [PATCH 07/18] fix authors path regex and test print for notebook checker --- .pre-commit-config.yaml | 2 +- resources/toml-check.py | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 7cb6797c..5165d40c 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -62,4 +62,4 @@ repos: name: author-check entry: resources/author-check.py language: system - files: authors/*\.toml + files: authors/.*\.toml diff --git a/resources/toml-check.py b/resources/toml-check.py index 3a6ac40c..086f322b 100755 --- a/resources/toml-check.py +++ b/resources/toml-check.py @@ -17,6 +17,7 @@ def error(msg): for f in sys.argv[1:]: + print(f"Checking {f}...") with open(f, 'r') as infile: info = tomllib.loads(infile.read()) From e1fcefd2ff90ac06b7ee7bb71177127ad334b828 Mon Sep 17 00:00:00 2001 From: Francisco Silva Date: Fri, 14 Jun 2024 16:32:01 +0100 Subject: [PATCH 08/18] remove test statement and make author-check executable --- resources/author-check.py | 0 resources/toml-check.py | 1 - 2 files changed, 1 deletion(-) mode change 100644 => 100755 resources/author-check.py diff --git a/resources/author-check.py b/resources/author-check.py old mode 100644 new mode 100755 diff --git a/resources/toml-check.py b/resources/toml-check.py index 086f322b..3a6ac40c 100755 --- a/resources/toml-check.py +++ b/resources/toml-check.py @@ -17,7 +17,6 @@ def error(msg): for f in sys.argv[1:]: - print(f"Checking {f}...") with open(f, 'r') as infile: info = tomllib.loads(infile.read()) From 4471cbe20196daea491998a23f41fa83cf7b1a8e Mon Sep 17 00:00:00 2001 From: Francisco Silva Date: Fri, 14 Jun 2024 16:35:02 +0100 Subject: [PATCH 09/18] rename toml check for notebooks --- .pre-commit-config.yaml | 6 +++--- resources/{toml-check.py => nb-meta-check.py} | 0 2 files changed, 3 insertions(+), 3 deletions(-) rename resources/{toml-check.py => nb-meta-check.py} (100%) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 5165d40c..8525c0e4 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -48,9 +48,9 @@ repos: language: system files: \.ipynb$ exclude: notebooks/notebook-style-guide/notebook.ipynb - - id: toml-check - name: toml-check - entry: resources/toml-check.py + - id: nb-meta-check + name: nb-meta-check + entry: resources/nb-meta-check.py language: system files: notebooks/.*/meta\.toml - id: lesson-check diff --git a/resources/toml-check.py b/resources/nb-meta-check.py similarity index 100% rename from resources/toml-check.py rename to resources/nb-meta-check.py From fc698e2d51c7e46283848b35de167fce3b8b07a6 Mon Sep 17 00:00:00 2001 From: Francisco Silva Date: Fri, 14 Jun 2024 16:40:46 +0100 Subject: [PATCH 10/18] add missing newline --- authors/singlestore.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/authors/singlestore.toml b/authors/singlestore.toml index f42be42b..1a360148 100644 --- a/authors/singlestore.toml +++ b/authors/singlestore.toml @@ -1,3 +1,3 @@ name="SingleStore" description="Engineering Team" -logo="singlestore" \ No newline at end of file +logo="singlestore" From 478f18b04ecd05e375fe9b3f3d2932443d348611 Mon Sep 17 00:00:00 2001 From: Francisco Silva Date: Fri, 14 Jun 2024 16:45:27 +0100 Subject: [PATCH 11/18] remove double quotes --- resources/author-check.py | 7 ++++--- resources/nb-meta-check.py | 4 ++-- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/resources/author-check.py b/resources/author-check.py index 9b9d88cb..a6ccdb8f 100755 --- a/resources/author-check.py +++ b/resources/author-check.py @@ -8,7 +8,7 @@ def error(msg): sys.exit(1) def check_author(author_path): - print(f"Checking {author_path}...") + print(f'Checking {author_path}...') with open(author_path, 'rb') as f: meta = tomllib.load(f) @@ -21,8 +21,9 @@ def check_author(author_path): # Logo is optional, but if defined a corresponding image must exist if 'logo' in meta: - logo_filename = f"{meta['logo']}.png" - logo_path = os.path.join("common/images/author-images", logo_filename) + logo_id = meta['logo'] + logo_filename = f'{logo_id}.png' + logo_path = os.path.join('common/images/author-images', logo_filename) if not os.path.isfile(logo_path): error(f'Logo image does not exist at {logo_path} for {author_path}') diff --git a/resources/nb-meta-check.py b/resources/nb-meta-check.py index 3a6ac40c..f3fef408 100755 --- a/resources/nb-meta-check.py +++ b/resources/nb-meta-check.py @@ -90,8 +90,8 @@ def error(msg): error(f'Lesson area {lesson_area} not found in preview icons') # Authors must have a corresponding author entry - author_meta_files = os.listdir("authors") + author_meta_files = os.listdir('authors') for author in meta['authors']: - author_filename = f"{author}.toml" + author_filename = f'{author}.toml' if author_filename not in author_meta_files: error(f'Author {author} does not have a corresponding author entry in {f}') From 8b53b9c0393fc67a386bbcebe83ef5e086ce2e3d Mon Sep 17 00:00:00 2001 From: Francisco Silva Date: Fri, 14 Jun 2024 16:47:57 +0100 Subject: [PATCH 12/18] pep8 fix --- resources/author-check.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/resources/author-check.py b/resources/author-check.py index a6ccdb8f..1b8dadd9 100755 --- a/resources/author-check.py +++ b/resources/author-check.py @@ -3,10 +3,12 @@ import sys import tomllib + def error(msg): print('ERROR:', msg, file=sys.stderr) sys.exit(1) + def check_author(author_path): print(f'Checking {author_path}...') @@ -27,6 +29,7 @@ def check_author(author_path): if not os.path.isfile(logo_path): error(f'Logo image does not exist at {logo_path} for {author_path}') + if __name__ == '__main__': for f in sys.argv[1:]: check_author(f) From 259049faf193dcc4d6c8596951acabd73cf1c20f Mon Sep 17 00:00:00 2001 From: Francisco Silva Date: Thu, 20 Jun 2024 10:27:30 +0100 Subject: [PATCH 13/18] improve author validation --- resources/nb-meta-check.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/resources/nb-meta-check.py b/resources/nb-meta-check.py index f3fef408..e0dd5bac 100755 --- a/resources/nb-meta-check.py +++ b/resources/nb-meta-check.py @@ -32,7 +32,12 @@ def error(msg): if 'description' not in meta: error(f'No `description` in `meta` section of {f}') - if 'authors' not in meta or not meta['authors']: + # Authors must be a non-empty list + if ( + 'authors' not in meta + or not isinstance(meta['authors'], list) + or not meta['authors'] + ): error(f'No `authors` in `meta` section of {f}') if 'icon' not in meta: From 0c55508b475771cb754ef50ad3a07085fe9e5f25 Mon Sep 17 00:00:00 2001 From: Francisco Silva Date: Thu, 20 Jun 2024 10:38:29 +0100 Subject: [PATCH 14/18] add internal/external information in author meta --- authors/singlestore.toml | 1 + resources/author-check.py | 3 +++ 2 files changed, 4 insertions(+) diff --git a/authors/singlestore.toml b/authors/singlestore.toml index 1a360148..f15021bd 100644 --- a/authors/singlestore.toml +++ b/authors/singlestore.toml @@ -1,3 +1,4 @@ name="SingleStore" description="Engineering Team" logo="singlestore" +external=false diff --git a/resources/author-check.py b/resources/author-check.py index 1b8dadd9..d0bb5f0e 100755 --- a/resources/author-check.py +++ b/resources/author-check.py @@ -21,6 +21,9 @@ def check_author(author_path): if 'description' not in meta: error(f'No `description` in `meta` section of {author_path}') + if 'external' not in meta: + error(f'No `external` in `meta` section of {author_path}') + # Logo is optional, but if defined a corresponding image must exist if 'logo' in meta: logo_id = meta['logo'] From 4c3a909526ad7cb3305b7f8fcc180a116a4de867 Mon Sep 17 00:00:00 2001 From: Francisco Silva Date: Thu, 20 Jun 2024 14:11:22 +0100 Subject: [PATCH 15/18] rename description to title --- authors/singlestore.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/authors/singlestore.toml b/authors/singlestore.toml index f15021bd..5b6086a6 100644 --- a/authors/singlestore.toml +++ b/authors/singlestore.toml @@ -1,4 +1,4 @@ name="SingleStore" -description="Engineering Team" +title="Engineering Team" logo="singlestore" external=false From d50238608d7e264be51778b7ede99aff0e043359 Mon Sep 17 00:00:00 2001 From: Francisco Silva Date: Thu, 20 Jun 2024 14:21:58 +0100 Subject: [PATCH 16/18] update author check --- resources/author-check.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/resources/author-check.py b/resources/author-check.py index d0bb5f0e..4cfcc7fd 100755 --- a/resources/author-check.py +++ b/resources/author-check.py @@ -18,8 +18,8 @@ def check_author(author_path): if 'name' not in meta: error(f'No `name` in `meta` section of {author_path}') - if 'description' not in meta: - error(f'No `description` in `meta` section of {author_path}') + if 'title' not in meta: + error(f'No `title` in `meta` section of {author_path}') if 'external' not in meta: error(f'No `external` in `meta` section of {author_path}') From f3867fdf1fc5c1ad449d46a13dc3f15489ee2de6 Mon Sep 17 00:00:00 2001 From: Francisco Silva Date: Fri, 21 Jun 2024 12:24:40 +0100 Subject: [PATCH 17/18] allow image url, rename logo to image --- authors/singlestore.toml | 2 +- resources/author-check.py | 20 ++++++++++++-------- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/authors/singlestore.toml b/authors/singlestore.toml index 5b6086a6..79b51321 100644 --- a/authors/singlestore.toml +++ b/authors/singlestore.toml @@ -1,4 +1,4 @@ name="SingleStore" title="Engineering Team" -logo="singlestore" +image="singlestore" external=false diff --git a/resources/author-check.py b/resources/author-check.py index 4cfcc7fd..e0551170 100755 --- a/resources/author-check.py +++ b/resources/author-check.py @@ -1,9 +1,9 @@ #!/usr/bin/env python3 import os +import re import sys import tomllib - def error(msg): print('ERROR:', msg, file=sys.stderr) sys.exit(1) @@ -24,13 +24,17 @@ def check_author(author_path): if 'external' not in meta: error(f'No `external` in `meta` section of {author_path}') - # Logo is optional, but if defined a corresponding image must exist - if 'logo' in meta: - logo_id = meta['logo'] - logo_filename = f'{logo_id}.png' - logo_path = os.path.join('common/images/author-images', logo_filename) - if not os.path.isfile(logo_path): - error(f'Logo image does not exist at {logo_path} for {author_path}') + # Image is optional, but if defined a corresponding image must exist + # Image can either be a URL or a filename in common/images/author-images + if 'image' in meta: + img_reference = meta['image'] + is_url = bool(re.match(r'^https?://', img_reference)) + + if (not is_url): + img_filename = f'{img_reference}.png' + img_path = os.path.join('common/images/author-images', img_filename) + if not os.path.isfile(img_path): + error(f'Author image does not exist at {img_path} for {author_path}') if __name__ == '__main__': From 5ba597dd7e745982fdb5b4658634f71fac41a309 Mon Sep 17 00:00:00 2001 From: Francisco Silva Date: Fri, 21 Jun 2024 12:28:37 +0100 Subject: [PATCH 18/18] lint fix --- resources/author-check.py | 1 + 1 file changed, 1 insertion(+) diff --git a/resources/author-check.py b/resources/author-check.py index e0551170..f6fd6bcb 100755 --- a/resources/author-check.py +++ b/resources/author-check.py @@ -4,6 +4,7 @@ import sys import tomllib + def error(msg): print('ERROR:', msg, file=sys.stderr) sys.exit(1)