diff --git a/packages.yml b/packages.yml index 3d4b7c1f06..7cf9313497 100644 --- a/packages.yml +++ b/packages.yml @@ -797,3 +797,5 @@ packages: js: "n/a" downloads: 188 downloads_updated_at: '2026-06-15T00:31:43.789982+00:00' +- name: langchain-aneforge + repo: sbryngelson/langchain-aneforge diff --git a/src/oss/python/integrations/providers/aneforge.mdx b/src/oss/python/integrations/providers/aneforge.mdx new file mode 100644 index 0000000000..e35b46545f --- /dev/null +++ b/src/oss/python/integrations/providers/aneforge.mdx @@ -0,0 +1,35 @@ +--- +title: "ANEForge" +description: "Run LangChain embeddings on the Apple Neural Engine via ANEForge." +--- + +[`langchain-aneforge`](https://github.com/sbryngelson/langchain-aneforge) runs a +sentence-embedding model on the Apple Neural Engine through +[ANEForge](https://github.com/sbryngelson/ANEForge), with no CoreML. It runs on +Apple Silicon macOS. + +## Installation and setup + + +```bash pip +pip install langchain-aneforge +``` + +```bash uv +uv add langchain-aneforge +``` + + +## Embeddings + +`ANEEmbeddings` is a `langchain_core.embeddings.Embeddings` that encodes on the +Neural Engine. The pooling mode and normalize flag are read from each model's +sentence-transformers config, so mean-pooled (MiniLM, E5) and cls-pooled (BGE, GTE) +models both produce correct vectors. + +```python +from langchain_aneforge import ANEEmbeddings + +embeddings = ANEEmbeddings(model="sentence-transformers/all-MiniLM-L6-v2") +vector = embeddings.embed_query("the Apple Neural Engine runs networks at low power") +```