> ## Documentation Index
> Fetch the complete documentation index at: https://edenai-docs-github-copilot-integration.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Caching

> Eden AI automatically caches responses for repeated identical requests. When a request matches a previous one (same model and same input), the cached response is returned at no additional cost.

export const TechArticleSchema = ({title, description, path, articleSection, about, proficiencyLevel = "Beginner", dependencies, keywords = [], datePublished, dateModified, image, inLanguage = "en"}) => {
  const baseUrl = "https://www.edenai.co/docs";
  const canonicalUrl = `${baseUrl}/${path}`.replace(/\/+$/, "");
  const ogParams = new URLSearchParams({
    division: articleSection || "",
    title: title || "",
    description: description || ""
  });
  const resolvedImage = image || `https://edenai.mintlify.app/_mintlify/api/og?${ogParams.toString()}`;
  const data = {
    "@context": "https://schema.org",
    "@type": "TechArticle",
    "@id": `${canonicalUrl}#techarticle`,
    mainEntityOfPage: {
      "@type": "WebPage",
      "@id": canonicalUrl
    },
    headline: title,
    name: title,
    description: description,
    url: canonicalUrl,
    inLanguage: inLanguage,
    isPartOf: {
      "@type": "WebSite",
      name: "Eden AI Documentation",
      url: baseUrl
    },
    author: [{
      "@type": "Organization",
      name: "Eden AI",
      url: "https://www.edenai.co/"
    }],
    publisher: {
      "@type": "Organization",
      name: "Eden AI",
      url: "https://www.edenai.co/",
      logo: {
        "@type": "ImageObject",
        url: "https://www.edenai.co/assets/logo.png"
      }
    }
  };
  if (articleSection) data.articleSection = articleSection;
  if (about) data.about = {
    "@type": "Thing",
    name: about
  };
  if (proficiencyLevel) data.proficiencyLevel = proficiencyLevel;
  if (dependencies) data.dependencies = dependencies;
  if (keywords && keywords.length) data.keywords = keywords;
  if (datePublished) data.datePublished = datePublished;
  if (dateModified) data.dateModified = dateModified;
  data.image = Array.isArray(resolvedImage) ? resolvedImage : [resolvedImage];
  const json = JSON.stringify(data);
  const schemaId = `techarticle-${canonicalUrl}`;
  React.useEffect(() => {
    if (typeof document === "undefined") return;
    document.querySelectorAll(`script[data-schema-id="${schemaId}"]`).forEach(n => n.remove());
    const script = document.createElement("script");
    script.type = "application/ld+json";
    script.dataset.schemaId = schemaId;
    script.textContent = json;
    document.head.appendChild(script);
    return () => script.remove();
  }, [json, schemaId]);
  return null;
};

<TechArticleSchema title={"Caching"} description={"Eden AI automatically caches responses for repeated identical requests. When a request matches a previous one (same model and same input), the cached response is returned at no additional cost."} path="v3/general/caching" articleSection="General" about={"API Configuration"} proficiencyLevel="Intermediate" keywords={["Eden AI", "AI API", "rate limits", "billing", "monitoring"]} datePublished="2026-05-06T00:00:00Z" dateModified="2026-05-07T00:00:00Z" />

Eden AI automatically caches responses for repeated identical requests. When a request matches a previous one (same model and same input), the cached response is returned at no additional cost.

## How It Works

1. You send a request with a specific model and input.
2. Eden AI processes the request and stores the result.
3. If the same model + input combination is sent again, the cached result is returned immediately.

Cached responses are faster (no round-trip to the provider) and free (no additional credit charge).

## Best Suited For

Caching works well with **deterministic features** where the same input always produces the same output:

* **Embeddings** — identical text produces identical vectors
* **Moderation** — same text yields the same classification
* **OCR** — same document produces the same extracted text
* **Named entity recognition** — same text, same entities

## Not Suited For

Caching is less useful for **non-deterministic** outputs:

* **LLM chat completions** — responses vary by design (temperature, randomness)
* **Image generation** — same prompt can produce different images

## Activating Caching

Caching can be enabled or disabled per project from the **Eden AI dashboard**:

1. Go to [app.edenai.run](https://app.edenai.run/)
2. Navigate to your project settings
3. Toggle **Response Caching** on or off

<Info>
  Caching is enabled by default. Once active, it works automatically — no changes to your API calls are needed.
</Info>
