{"id":2219,"date":"2026-08-16T20:08:42","date_gmt":"2026-08-16T20:08:42","guid":{"rendered":"https:\/\/convly.ai\/?p=2219"},"modified":"2026-08-16T20:08:42","modified_gmt":"2026-08-16T20:08:42","slug":"hugging-face-dataset","status":"publish","type":"post","link":"https:\/\/convly.ai\/de\/hugging-face-dataset\/","title":{"rendered":"Hugging Face Datasets: Entwicklerreferenz"},"content":{"rendered":"<div class=\"convly-tldr\">\n<ul>\n<li>A <strong>Hugging Face dataset<\/strong> is a structured data collection hosted on the Hugging Face Hub, searchable at huggingface.co\/datasets \u2014 over 300,000 public datasets as of 2026.<\/li>\n<li>Load any dataset in one line: <code>from datasets import load_dataset; ds = load_dataset('stanfordnlp\/imdb')<\/code><\/li>\n<li>Each dataset ships with typed splits (train\/validation\/test), a features schema (text, image, audio, labels), and optional streaming for terabyte-scale files.<\/li>\n<li>Push your own data with <code>ds.push_to_hub('your-username\/your-dataset')<\/code> after running <code>huggingface-cli login<\/code>.<\/li>\n<\/ul>\n<\/div>\n<p>A Hugging Face dataset is a versioned, structured data collection stored on the Hugging Face Hub and consumed through the <code>datasets<\/code> Python library. Each dataset exposes one or more<em>splits<\/em> (typically train, validation, and test), a typed<em>features<\/em> schema describing every column, and metadata covering license, task category, and language tags. The library handles downloading, caching, and format conversion so you almost never deal with raw files directly.<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_86 counter-flat ez-toc-counter ez-toc-container-direction\">\n<label for=\"ez-toc-cssicon-toggle-item-6a825cfd5697a\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #000000;color:#000000\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #000000;color:#000000\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\"  id=\"ez-toc-cssicon-toggle-item-6a825cfd5697a\"  aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/convly.ai\/de\/hugging-face-dataset\/#Finding_Datasets_on_the_Hub\" >Finding Datasets on the Hub<\/a><\/li><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/convly.ai\/de\/hugging-face-dataset\/#Installation\" >Installation<\/a><\/li><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/convly.ai\/de\/hugging-face-dataset\/#Loading_a_Dataset\" >Loading a Dataset<\/a><\/li><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/convly.ai\/de\/hugging-face-dataset\/#Dataset_Structure_Splits_and_Features\" >Dataset Structure: Splits and Features<\/a><\/li><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/convly.ai\/de\/hugging-face-dataset\/#Streaming_Large_Datasets\" >Streaming Large Datasets<\/a><\/li><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/convly.ai\/de\/hugging-face-dataset\/#Filtering_and_Processing\" >Filtering and Processing<\/a><\/li><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/convly.ai\/de\/hugging-face-dataset\/#Converting_to_Other_Formats\" >Converting to Other Formats<\/a><\/li><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/convly.ai\/de\/hugging-face-dataset\/#Pushing_Your_Own_Dataset_to_the_Hub\" >Pushing Your Own Dataset to the Hub<\/a><\/li><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/convly.ai\/de\/hugging-face-dataset\/#Platform_Notes\" >Platform Notes<\/a><\/li><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/convly.ai\/de\/hugging-face-dataset\/#Using_Datasets_for_Fine-Tuning_and_Evaluation\" >Using Datasets for Fine-Tuning and Evaluation<\/a><\/li><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/convly.ai\/de\/hugging-face-dataset\/#Frequently_Asked_Questions\" >Frequently Asked Questions<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"Finding_Datasets_on_the_Hub\"><\/span>Finding Datasets on the Hub<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>The primary discovery surface is <a href=\"https:\/\/huggingface.co\/datasets\" target=\"_blank\" rel=\"noopener\">huggingface.co\/datasets<\/a>. Filters available in the UI:<\/p>\n<ul>\n<li><strong>Task<\/strong> \u2014 text classification, question answering, image segmentation, translation, summarization, and more<\/li>\n<li><strong>Language<\/strong> \u2014 ISO 639-1 codes (en, zh, fr, de, \u2026)<\/li>\n<li><strong>License<\/strong> \u2014 Apache 2.0, MIT, CC-BY, CC0, OpenRAIL, etc.<\/li>\n<li><strong>Size category<\/strong> \u2014 under 1K rows up to over 1B rows<\/li>\n<li><strong>Modality<\/strong> \u2014 text, image, audio, video, tabular, multimodal<\/li>\n<\/ul>\n<p>You can also search programmatically via the Hub Python client:<\/p>\n<pre><code>from huggingface_hub import list_datasets\n\nresults = list_datasets(filter='task_categories:text-classification', limit=20)\nfor ds in results:\n    print(ds.id, ds.downloads)\n<\/code><\/pre>\n<p>The Datasets Server REST API exposes a <code>\/valid<\/code> endpoint that lists all datasets with precomputed Parquet exports, enabling fast previews and row sampling without downloading a full dataset.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Installation\"><\/span>Installation<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>The<code>datasets<\/code> library runs on Python 3.8+ and is platform-agnostic.<\/p>\n<pre><code>pip install datasets\n<\/code><\/pre>\n<p>For image and audio support, install the relevant extras:<\/p>\n<pre><code>pip install datasets[vision]# Pillow\npip install datasets    # librosa, soundfile\n<\/code><\/pre>\n<p>To authenticate for private datasets or to push data to the Hub:<\/p>\n<pre><code>pip install huggingface_hub\nhuggingface-cli login          # prompts for your HF access token\n<\/code><\/pre>\n<p>Your token is stored in <code>~\/.cache\/huggingface\/token<\/code> on macOS\/Linux, or <code>%USERPROFILE%.cachehuggingfacetoken<\/code> on Windows. Alternatively, set the <code>HF_TOKEN<\/code> environment variable directly.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Loading_a_Dataset\"><\/span>Loading a Dataset<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>The primary entry point is <code>load_dataset()<\/code>. Without a<code>split<\/code> argument it returns a <code>DatasetDict<\/code> containing all available splits:<\/p>\n<pre><code>from datasets import load_dataset\n\nds = load_dataset('stanfordnlp\/imdb')\nprint(ds)\n# DatasetDict({\n#     train: Dataset({features: ['text', 'label'], num_rows: 25000})\n#     test:  Dataset({features: ['text', 'label'], num_rows: 25000})\n# })\n\ntrain = ds['train']\nprint(train.features)\n# {'text': Value(dtype='string'), 'label': ClassLabel(names=['neg', 'pos'])}\n\nprint(train[0]['text'][:120])\n<\/code><\/pre>\n<h3>Loading a Single Split<\/h3>\n<pre><code>train = load_dataset('stanfordnlp\/imdb', split='train')\n# Returns a Dataset directly, not a DatasetDict\n<\/code><\/pre>\n<h3>Loading a Named Configuration<\/h3>\n<p>Many datasets define named configs for language variants, domain subsets, or schema versions. Pass the config name as the second positional argument:<\/p>\n<pre><code>ds = load_dataset('Helsinki-NLP\/opus_books', 'en-fr')\n<\/code><\/pre>\n<p>To list all available configs for a dataset before loading:<\/p>\n<pre><code>from datasets import get_dataset_config_names\nprint(get_dataset_config_names('Helsinki-NLP\/opus_books'))\n<\/code><\/pre>\n<h3>Loading from Local Files<\/h3>\n<p>Pass a format name and file path instead of a Hub dataset ID. Supported formats include CSV, JSON\/JSONL, Parquet, Arrow, plain text, and the ImageFolder\/AudioFolder conventions.<\/p>\n<pre><code>ds = load_dataset('csv', data_files='my_data.csv')\nds = load_dataset('json', data_files={'train': 'train.jsonl', 'test': 'test.jsonl'})\nds = load_dataset('imagefolder', data_dir='.\/photos\/')\n<\/code><\/pre>\n<h2><span class=\"ez-toc-section\" id=\"Dataset_Structure_Splits_and_Features\"><\/span>Dataset Structure: Splits and Features<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Check which splits a dataset has before loading:<\/p>\n<pre><code>from datasets import get_dataset_split_names\nprint(get_dataset_split_names('stanfordnlp\/imdb'))\n# ['train', 'test', 'unsupervised']\n<\/code><\/pre>\n<p>The<code>features<\/code> dict maps column names to typed descriptors. Common feature types:<\/p>\n<table>\n<thead>\n<tr>\n<th>Feature Type<\/th>\n<th>Example<\/th>\n<th>Notes<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><code>Value<\/code><\/td>\n<td><code>Value(dtype='string')<\/code><\/td>\n<td>Scalar \u2014 string, int32, float32, bool, etc.<\/td>\n<\/tr>\n<tr>\n<td><code>ClassLabel<\/code><\/td>\n<td><code>ClassLabel(names=['neg','pos'])<\/code><\/td>\n<td>Stored as int; decoded to name on access<\/td>\n<\/tr>\n<tr>\n<td><code>Sequence<\/code><\/td>\n<td><code>Sequence(Value('int32'))<\/code><\/td>\n<td>Variable-length list of a typed value<\/td>\n<\/tr>\n<tr>\n<td><code>Image<\/code><\/td>\n<td><code>Image()<\/code><\/td>\n<td>PIL Image; stored as bytes, decoded lazily<\/td>\n<\/tr>\n<tr>\n<td><code>Audio<\/code><\/td>\n<td><code>Audio(sampling_rate=16000)<\/code><\/td>\n<td>Dict with <code>array<\/code> and <code>sampling_rate<\/code> keys<\/td>\n<\/tr>\n<tr>\n<td><code>Translation<\/code><\/td>\n<td><code>Translation(languages=['en','fr'])<\/code><\/td>\n<td>Dict keyed by language code<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2><span class=\"ez-toc-section\" id=\"Streaming_Large_Datasets\"><\/span>Streaming Large Datasets<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>For datasets too large to download \u2014 Common Crawl, The Pile, LAION-5B \u2014 pass <code>streaming=True<\/code>. Data is fetched and decoded on the fly without filling your disk:<\/p>\n<pre><code>ds = load_dataset('allenai\/c4', 'en', split='train', streaming=True)\n\nfor example in ds.take(1000):\n    print(example['text'][:80])\n<\/code><\/pre>\n<p>Streaming returns an<code>IterableDataset<\/code> rather than a <code>Dataset<\/code>. It supports<code>.map()<\/code>, <code>.filter()<\/code>, <code>.shuffle(buffer_size=N)<\/code>, and <code>.take(N)<\/code>, but not random indexing or <code>len()<\/code>. To get a fixed slice without streaming the whole dataset:<\/p>\n<pre><code>ds = load_dataset('allenai\/c4', 'en', split='train[:50000]')\n<\/code><\/pre>\n<p>Split slicing accepts absolute row counts (<code>[:50000]<\/code>), percentages (<code>[:10%]<\/code>), and stepped ranges (<code>[10%:20%]<\/code>).<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Filtering_and_Processing\"><\/span>Filtering and Processing<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>All operations run in Apache Arrow and use multiprocessing by default. The result is cached on disk; re-running the same <code>.map()<\/code> on the same data returns the cache instantly.<\/p>\n<pre><code># Filter rows\nshort = train.filter(lambda x: len(x['text']) &lt; 500)\n\n# Batched map \u2014 much faster for tokenization\ndef tokenize(batch):\n    return tokenizer(batch['text'], truncation=True, padding='max_length')\n\ntokenized = train.map(tokenize, batched=True, batch_size=256, num_proc=4)\n\n# Column operations\ntokenized = tokenized.remove_columns(['text'])\nds = ds.rename_column('label', 'labels')\n\n# Shuffle and select\nds = ds.shuffle(seed=42).select(range(10000))\n<\/code><\/pre>\n<h2><span class=\"ez-toc-section\" id=\"Converting_to_Other_Formats\"><\/span>Converting to Other Formats<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<table>\n<thead>\n<tr>\n<th>Target Format<\/th>\n<th>Method<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Pandas DataFrame<\/td>\n<td><code>ds.to_pandas()<\/code><\/td>\n<\/tr>\n<tr>\n<td>PyTorch Dataset<\/td>\n<td><code>ds.with_format('torch')<\/code><\/td>\n<\/tr>\n<tr>\n<td>TensorFlow Dataset<\/td>\n<td><code>ds.to_tf_dataset(columns=[...], batch_size=32)<\/code><\/td>\n<\/tr>\n<tr>\n<td>NumPy arrays<\/td>\n<td><code>ds.with_format('numpy')<\/code><\/td>\n<\/tr>\n<tr>\n<td>Parquet file<\/td>\n<td><code>ds.to_parquet('output.parquet')<\/code><\/td>\n<\/tr>\n<tr>\n<td>JSON \/ JSONL<\/td>\n<td><code>ds.to_json('output.jsonl')<\/code><\/td>\n<\/tr>\n<tr>\n<td>CSV<\/td>\n<td><code>ds.to_csv('output.csv')<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2><span class=\"ez-toc-section\" id=\"Pushing_Your_Own_Dataset_to_the_Hub\"><\/span>Pushing Your Own Dataset to the Hub<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>After running <code>huggingface-cli login<\/code>, push any<code>Dataset<\/code> or <code>DatasetDict<\/code> object directly:<\/p>\n<pre><code>from datasets import Dataset, DatasetDict\nimport pandas as pd\n\ndf = pd.read_csv('my_data.csv')\nds = Dataset.from_pandas(df)\n\nds.push_to_hub('your-username\/my-dataset', private=False)\n<\/code><\/pre>\n<p>To push train and test splits together:<\/p>\n<pre><code>split = ds.train_test_split(test_size=0.1)\nDatasetDict({'train': split['train'], 'test': split['test']}).push_to_hub('your-username\/my-dataset')\n<\/code><\/pre>\n<p>The Hub stores datasets as sharded Parquet files and auto-generates a dataset preview viewer. Add a <code>README.md<\/code> (Dataset Card) with YAML front-matter to make your dataset filterable by task, language, and license in the Hub search UI.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Platform_Notes\"><\/span>Platform Notes<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3>Cache Paths<\/h3>\n<table>\n<thead>\n<tr>\n<th>Platform<\/th>\n<th>Default Cache Path<\/th>\n<th>Override Env Var<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>macOS \/ Linux<\/td>\n<td><code>~\/.cache\/huggingface\/datasets\/<\/code><\/td>\n<td><code>HF_DATASETS_CACHE<\/code><\/td>\n<\/tr>\n<tr>\n<td>Windows<\/td>\n<td><code>%USERPROFILE%.cachehuggingfacedatasets<\/code><\/td>\n<td><code>HF_DATASETS_CACHE<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>Windows<\/h3>\n<p>Windows uses the<code>spawn<\/code> start method for multiprocessing, which requires your script entry point to be inside a <code>if __name__ == '__main__':<\/code> guard. Without this,<code>.map(num_proc=4)<\/code> will either hang or raise a <code>RuntimeError<\/code>. If you&#8217;re running in a Jupyter notebook, either use <code>num_proc=1<\/code> or install<code>multiprocess<\/code> alongside <code>datasets<\/code>, which the library will prefer over the standard-library <code>multiprocessing<\/code> module.<\/p>\n<h3>Disk Space<\/h3>\n<p>Large datasets (Common Crawl, RedPajama, LAION) consume hundreds of gigabytes when fully cached. Use <code>streaming=True<\/code> to avoid downloads. To see what&#8217;s in your cache, run <code>python -c &quot;from datasets import inspect_dataset; print(inspect_dataset.__doc__)&quot;<\/code> or browse the cache directory directly. Cached datasets are stored as Arrow files organized by dataset name and hash; delete subfolders manually to reclaim space.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Using_Datasets_for_Fine-Tuning_and_Evaluation\"><\/span>Using Datasets for Fine-Tuning and Evaluation<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>The standard fine-tuning pipeline is: load dataset \u2192 tokenize with<code>.map(batched=True)<\/code> \u2192 set format to <code>'torch'<\/code> \u2192 pass to a<code>Trainer<\/code> or a custom training loop. The Hugging Face <code>transformers<\/code> library&#8217;s <code>Trainer<\/code> class accepts a <code>Dataset<\/code> object directly for its <code>train_dataset<\/code> and <code>eval_dataset<\/code> arguments.<\/p>\n<p>When evaluating models against benchmark datasets, the <a href=\"https:\/\/convly.ai\/llm-leaderboard\/\">LLM leaderboard<\/a> provides scores across common evaluation sets \u2014 useful context when deciding which dataset to target for your own benchmark. If you&#8217;re weighing whether to fine-tune and self-host versus calling an API, the <a href=\"https:\/\/convly.ai\/self-hosting-vs-api-calculator\/\">self-hosting vs API break-even calculator<\/a> can model the cost crossover by request volume. For raw per-token API cost across providers, use the <a href=\"https:\/\/convly.ai\/ai-api-cost-calculator\/\">API cost calculator<\/a>. And if you plan to run a fine-tuned model locally, VRAM is the hard constraint \u2014 the <a href=\"https:\/\/convly.ai\/llm-vram-calculator\/\">VRAM calculator<\/a> estimates GPU memory requirements from model size and quantization precision.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Frequently_Asked_Questions\"><\/span>Frequently Asked Questions<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3>What is the difference between a Dataset and a DatasetDict?<\/h3>\n<p>A <code>Dataset<\/code> is a single split \u2014 one table of rows and columns. A <code>DatasetDict<\/code> is a dict-like container holding multiple splits, and is the default return type of <code>load_dataset()<\/code> when you omit the <code>split<\/code> argument. Access individual splits by key: <code>ds['train']<\/code>, <code>ds['test']<\/code>, etc. If you pass<code>split='train'<\/code>, you get a bare <code>Dataset<\/code> directly.<\/p>\n<h3>How do I load a private dataset from the Hub?<\/h3>\n<p>Authenticate first with <code>huggingface-cli login<\/code>, or set the <code>HF_TOKEN<\/code> environment variable to your access token. Then call <code>load_dataset('org\/private-dataset', token=True)<\/code>. The <code>token=True<\/code> flag tells the library to use the cached or environment-variable credential. For CI\/CD pipelines, set <code>HF_TOKEN<\/code> as a secret and omit the interactive login step.<\/p>\n<h3>Why does load_dataset() take a long time on the first call?<\/h3>\n<p>The first call downloads raw data files, converts them to Apache Arrow format, and writes the cache to disk. For large datasets this can take minutes or longer. Subsequent calls on the same machine return the cached Arrow files almost instantly. If you&#8217;re on a slow connection or have limited disk space, pass <code>streaming=True<\/code> to process data on the fly without caching it locally.<\/p>\n<h3>Can I use Hugging Face datasets without an internet connection?<\/h3>\n<p>Yes. Once a dataset is cached, set the environment variable <code>HF_DATASETS_OFFLINE=1<\/code> and<code>load_dataset()<\/code> reads from the local cache without making any network requests. This is useful for air-gapped servers, reproducible offline runs, or HPC clusters where worker nodes lack internet access but share a network file system with the cache directory.<\/p>\n<h3>What file format does the Hub use internally?<\/h3>\n<p>Datasets stored on the Hub are served as Apache Parquet files, split into shards. The <code>datasets<\/code> library downloads these shards and converts them to Apache Arrow (<code>.arrow<\/code>) files for local caching. You can bypass the library entirely and access the Parquet shards directly via the Hub file browser or by using <code>huggingface_hub.hf_hub_download()<\/code>.<\/p>\n<h3>How large can a Hugging Face dataset be?<\/h3>\n<p>There is no enforced size limit, and multi-terabyte datasets exist on the Hub (LAION-5B image-text pairs, large Common Crawl snapshots). For datasets above a few gigabytes, the Hub stores data as multiple Parquet shards rather than a single file. Use <code>streaming=True<\/code> in the <code>datasets<\/code> library to work with these datasets without downloading them in full, or download specific shards via the <code>data_files<\/code> argument.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A Hugging Face dataset is a structured data collection hosted on the Hugging Face Hub, searchable at huggingface.co\/datasets \u2014 over [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":2220,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[7],"tags":[],"class_list":["post-2219","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ai-news"],"_links":{"self":[{"href":"https:\/\/convly.ai\/de\/wp-json\/wp\/v2\/posts\/2219","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/convly.ai\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/convly.ai\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/convly.ai\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/convly.ai\/de\/wp-json\/wp\/v2\/comments?post=2219"}],"version-history":[{"count":1,"href":"https:\/\/convly.ai\/de\/wp-json\/wp\/v2\/posts\/2219\/revisions"}],"predecessor-version":[{"id":2221,"href":"https:\/\/convly.ai\/de\/wp-json\/wp\/v2\/posts\/2219\/revisions\/2221"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/convly.ai\/de\/wp-json\/wp\/v2\/media\/2220"}],"wp:attachment":[{"href":"https:\/\/convly.ai\/de\/wp-json\/wp\/v2\/media?parent=2219"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/convly.ai\/de\/wp-json\/wp\/v2\/categories?post=2219"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/convly.ai\/de\/wp-json\/wp\/v2\/tags?post=2219"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}