Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Von Bedeutung
- Foundry Local ist in der Vorschau verfügbar. Öffentliche Vorschauversionen bieten frühzeitigen Zugriff auf Features, die sich in der aktiven Bereitstellung befinden.
- Features, Ansätze und Prozesse können sich vor der allgemeinen Verfügbarkeit (General Availability, GA) noch ändern oder eine eingeschränkte Funktionalität aufweisen.
In diesem Lernprogramm erfahren Sie, wie Sie eine Anwendung mithilfe des Foundry Local SDK und der LangChain erstellen. In diesem Lernprogramm erstellen Sie eine Übersetzungsanwendung, die Text aus einer Sprache in eine andere übersetzt, die ein lokales Modell verwendet.
Voraussetzungen
Bevor Sie dieses Lernprogramm starten, benötigen Sie Folgendes:
- Foundry Local installiert auf Ihrem Computer. Lesen Sie das Handbuch " Erste Schritte mit Foundry Local " für Installationsanweisungen.
- Python 3.10 oder höher auf Ihrem Computer installiert. Sie können Python von der offiziellen Website herunterladen.
Installieren von Python-Paketen
Sie müssen die folgenden Python-Pakete installieren:
pip install langchain[openai]
pip install foundry-local-sdk
Tipp
Es wird empfohlen, eine virtuelle Umgebung zu verwenden, um Paketkonflikte zu vermeiden. Sie können eine virtuelle Umgebung entweder mit venv
oder mit conda
erstellen.
Erstellen einer Übersetzungsanwendung
Erstellen Sie eine neue Python-Datei namens translation_app.py
in Ihrer bevorzugten IDE, und fügen Sie den folgenden Code hinzu:
import os
from langchain_openai import ChatOpenAI
from langchain_core.prompts import ChatPromptTemplate
from foundry_local import FoundryLocalManager
# By using an alias, the most suitable model will be downloaded
# to your end-user's device.
# TIP: You can find a list of available models by running the
# following command: `foundry model list`.
alias = "phi-3-mini-4k"
# Create a FoundryLocalManager instance. This will start the Foundry
# Local service if it is not already running and load the specified model.
manager = FoundryLocalManager(alias)
# Configure ChatOpenAI to use your locally-running model
llm = ChatOpenAI(
model=manager.get_model_info(alias).id,
base_url=manager.endpoint,
api_key=manager.api_key,
temperature=0.6,
streaming=False
)
# Create a translation prompt template
prompt = ChatPromptTemplate.from_messages([
(
"system",
"You are a helpful assistant that translates {input_language} to {output_language}."
),
("human", "{input}")
])
# Build a simple chain by connecting the prompt to the language model
chain = prompt | llm
input = "I love to code."
print(f"Translating '{input}' to French...")
# Run the chain with your inputs
ai_msg = chain.invoke({
"input_language": "English",
"output_language": "French",
"input": input
})
# print the result content
print(f"Response: {ai_msg.content}")
Hinweis
Einer der wichtigsten Vorteile von Foundry Local besteht darin, dass automatisch die am besten geeignete Modellvariante für die Hardware des Benutzers ausgewählt wird. Wenn der Benutzer beispielsweise über eine GPU verfügt, wird die GPU-Version des Modells heruntergeladen. Wenn der Benutzer über eine NPU (Neural Processing Unit) verfügt, lädt er die NPU-Version herunter. Wenn der Benutzer weder über eine GPU noch über NPU verfügt, lädt er die CPU-Version des Modells herunter.
Ausführen der Anwendung
Um die Anwendung auszuführen, öffnen Sie ein Terminal, und navigieren Sie zu dem Verzeichnis, in dem Sie die translation_app.py
Datei gespeichert haben. Führen Sie dann den folgenden Befehl aus:
python translation_app.py
Voraussetzungen
Bevor Sie dieses Lernprogramm starten, benötigen Sie Folgendes:
- Foundry Local installiert auf Ihrem Computer. Lesen Sie das Handbuch " Erste Schritte mit Foundry Local " für Installationsanweisungen.
- Node.js 18 oder höher auf Ihrem Computer installiert. Sie können Node.js von der offiziellen Website herunterladen.
Node.js Pakete installieren
Sie müssen die folgenden Node.js Pakete installieren:
npm install @langchain/openai @langchain/core
npm install foundry-local-sdk
Erstellen einer Übersetzungsanwendung
Erstellen Sie eine neue JavaScript-Datei namens translation_app.js
in Ihrer bevorzugten IDE, und fügen Sie den folgenden Code hinzu:
import { FoundryLocalManager } from "foundry-local-sdk";
import { ChatOpenAI } from "@langchain/openai";
import { ChatPromptTemplate } from "@langchain/core/prompts";
// By using an alias, the most suitable model will be downloaded
// to your end-user's device.
// TIP: You can find a list of available models by running the
// following command in your terminal: `foundry model list`.
const alias = "phi-3-mini-4k";
// Create a FoundryLocalManager instance. This will start the Foundry
// Local service if it is not already running.
const foundryLocalManager = new FoundryLocalManager()
// Initialize the manager with a model. This will download the model
// if it is not already present on the user's device.
const modelInfo = await foundryLocalManager.init(alias)
console.log("Model Info:", modelInfo)
// Configure ChatOpenAI to use your locally-running model
const llm = new ChatOpenAI({
model: modelInfo.id,
configuration: {
baseURL: foundryLocalManager.endpoint,
apiKey: foundryLocalManager.apiKey
},
temperature: 0.6,
streaming: false
});
// Create a translation prompt template
const prompt = ChatPromptTemplate.fromMessages([
{
role: "system",
content: "You are a helpful assistant that translates {input_language} to {output_language}."
},
{
role: "user",
content: "{input}"
}
]);
// Build a simple chain by connecting the prompt to the language model
const chain = prompt.pipe(llm);
const input = "I love to code.";
console.log(`Translating '${input}' to French...`);
// Run the chain with your inputs
chain.invoke({
input_language: "English",
output_language: "French",
input: input
}).then(aiMsg => {
// Print the result content
console.log(`Response: ${aiMsg.content}`);
}).catch(err => {
console.error("Error:", err);
});
Hinweis
Einer der wichtigsten Vorteile von Foundry Local besteht darin, dass es automatisch die am besten geeignete Modellvariante für die Hardware des Benutzers auswählt. Wenn der Benutzer beispielsweise über eine GPU verfügt, wird die GPU-Version des Modells heruntergeladen. Wenn der Benutzer über eine NPU (Neural Processing Unit) verfügt, lädt er die NPU-Version herunter. Wenn der Benutzer weder über eine GPU noch über NPU verfügt, lädt er die CPU-Version des Modells herunter.
Ausführen der Anwendung
Um die Anwendung auszuführen, öffnen Sie ein Terminal, und navigieren Sie zu dem Verzeichnis, in dem Sie die translation_app.js
Datei gespeichert haben. Führen Sie dann den folgenden Befehl aus:
node translation_app.js
Nächste Schritte
- In der LangChain-Dokumentation finden Sie erweiterte Features und Funktionen.
- Kompilieren Sie Hugging Face-Modelle, die auf Foundry Local ausgeführt werden