AI.exe Ende Februar in Office aufgetaucht

Vor einigen Wochen ist mir bei der routinemäßigen Betrachtung aufgefallen, dass in Windows und konkret im Office16 Ordner die Datei ai.exe aufgetaucht ist.

AI.exe, was ist dies?

Es gabt schon einige KI Prozesse in Office, wie die Bing Übersetzung oder andere verbundene Dienste aus dem Editor. Nun hat Microsoft dies in Ai.exe alles ausgelagert.

Mein Fund:

 

Antwort

Nun hat ein Microsoft Mitarbeiter hier schon ausführlich dies erklärt. Ich habe dies für euch übersetzt:

https://answers.microsoft.com/en-us/msoffice/forum/all/office16-aiexe/ecab05bf-3910-4810-ba45-0c44a94071ee

Übersetzung

Die lokale künstliche Intelligenz (KI) in Microsoft Office-Desktopanwendungen unter Windows wurde kürzlich aus dem Prozess heraus verlagert. Mit anderen Worten: Office-Desktop-Anwendungen (wie Word, Outlook, PowerPoint usw.) kommunizieren jetzt mit einem anderen Programm (ai.exe), um die meisten lokalen KI-Funktionen auszuführen.

Für Microsoft Office-Desktopanwendungen unter Windows sind die folgenden Binärdateien mit lokaler KI verbunden:

aitrx.dll: Die Transceiver-Bibliothek ( trx ), die von Office-Desktop-Anwendungen geladen wird, um Eingaben an ai.exe zu senden und Ausgaben von ai.exe zu empfangen.

ai.exe: Die ausführbare Datei, die als Host für ai.dll dient. Diese ausführbare Datei empfängt Eingaben von aitrx.dll in einer Office-Desktop-Anwendung, führt diese Eingaben durch ai.dll, um die zugehörigen Ausgaben zu erhalten, und überträgt diese Ausgaben zurück an aitrx.dll in der Office-Desktop-Anwendung.

ai.dll: Die Hauptbibliothek, die verschiedene AI-Funktionen enthält (insbesondere die der onnxruntime- und onnxruntime-Erweiterungen).

mlg.dll: Eine Bibliothek zur Verarbeitung natürlicher Sprache, die bei Bedarf von ai.dll geladen wird. Sie enthält Code, der von Microsofts Machine Learning Group ( MLG ) erstellt wurde.

aimgr.exe: Die ausführbare Datei Manager ( mgr ), die zur Verwaltung verschiedener Instanzen von ai.exe in Office-Desktopanwendungen verwendet wird. Hinweis: Zum Zeitpunkt der Erstellung dieser Antwort ist diese ausführbare Datei außerhalb von Microsoft noch nicht aktiviert.

Bei einer typischen Office-x86-Installation zum Ausführen befinden sich diese Binärdateien an den folgenden beiden Speicherorten:

Primär ( x86 ): %ProgramFiles(x86)%\Microsoft Office\root\vfs\ProgramFilesCommonX86\Microsoft Shared\Office16\

Sekundär ( x64 ): %ProgramFiles(x86)%\Microsoft Office\root\vfs\ProgramFilesCommonX64\Microsoft Shared\Office16\

Bei einer typischen Office-x64-Click-to-Run-Installation befinden sich diese Binärdateien an den folgenden beiden Speicherorten:

Primär ( x64 ): %ProgramFiles%\Microsoft Office\root\vfs\ProgramFilesCommonX64\Microsoft Shared\Office16\

Sekundär ( x86 ): %ProgramFiles%\Microsoft Office\root\vfs\ProgramFilesCommonX86\Microsoft Shared\Office16\

Bei einer typischen Office ARM64EC Click-to-Run-Installation (z. B. Surface Pro 9 mit SQ3-Prozessor oder Surface Pro X mit SQ2-Prozessor) befinden sich diese Binärdateien an den folgenden beiden Speicherorten:

Primär ( ARM64EC ): %ProgramFiles%\Microsoft Office\root\vfs\ProgramFilesCommonX64\Microsoft Shared\Office16\

Sekundär ( x86 ): %ProgramFiles%\Microsoft Office\root\vfs\ProgramFilesCommonX86\Microsoft Shared\Office16\

Hinweis: ARM64EC ist gleichbedeutend mit „ARM64 (x64 kompatibel)“.

Wenn Sie also eine aktuelle x64-Version von Office auf Ihrem Laufwerk C installiert haben, befindet sich ai.exe unter:

C:\Programme\Microsoft Office\root\vfs\ProgramFilesCommonX64\Microsoft Shared\Office16\ai.exe

Alle Office-Binärdateien sind code-signiert; daher sind auch alle diese Binärdateien code-signiert. Eine gültige Codesignatur bedeutet, dass die Binärdatei nach der Codesignierung nicht geändert wurde. Die Codesignierung findet während der offiziellen Office-Builds statt, nachdem der Quellcode kompiliert und mit den verschiedenen Binärdateien verknüpft wurde. Hier ist ein Beispiel für eine gültige Codesignatur für ai.exe Version 0.12.2 (Teil des neuesten internen Builds von Office):

Das Konzept ist bei allen anderen Versionen von ai.exe ähnlich.

AI-Modelle, die von ai.dll ausgeführt werden, finden Sie an den folgenden beiden Orten:

Wenn das Modell mit der Installation mitgeliefert wird, ist der Speicherort folgender:

Bei einer typischen Office-x86-Installation mit Klick auf die Schaltfläche „Ausführen“: %ProgramFiles(x86)%\Microsoft Office\root\Office16\AI\

Für eine typische Office x64- oder ARM64EC-Klick-to-Run-Installation: %ProgramFiles%\Microsoft Office\root\Office16\AI\

Wenn das Modell von einem Microsoft Content Delivery Network (CDN) heruntergeladen wird, befindet sich der Speicherort im Ordner %USERPROFILE%\AppData\Local\Microsoft\ in einem Unterordner, der dem Projektnamen zugeordnet ist.

Im Folgenden finden Sie eine Zusammenfassung der Ausführung in groben Zügen:

Lokale AI-Binärdateien werden nur geladen, wenn sie verwendet werden. Wenn Sie also nie einen Codeabschnitt in einer Office-Desktop-Anwendung ausführen, für den lokale KI erforderlich ist, werden keine lokalen KI-Binärdateien geladen, d. h. ai.exe wird nicht gestartet.

Sobald lokale AI-Binärdateien geladen sind, bleiben sie geladen, bis die Office-Desktop-Anwendung beendet wird. Wenn Sie beispielsweise einen Codeabschnitt in Outlook ausführen, der ein KI-Modell verwendet, wird ai.exe gestartet, ai.dll geladen, und ai.dll lädt und führt das Modell aus. Wenn Sie Outlook im Hintergrund laufen lassen, bleibt auch ai.exe im Hintergrund. Wenn Outlook beendet wird, wird auch ai.exe beendet. ai.exe bleibt geladen, weil die Ausführung eines bestimmten Modells in der Regel mehrmals während einer Sitzung erfolgt, nicht nur einmal, und es dauert eine beträchtliche Zeit, ai.exe zu starten, ai.dll zu laden und ai.dll das Modell laden zu lassen. Mit anderen Worten: ai.exe wird im Speicher gehalten, damit die Office-Leistung unter diesen Umständen so schnell wie möglich ist.

Sobald lokale AI-Binärdateien geladen sind, laden sie sich bei Bedarf selbst nach. Wenn Sie beispielsweise einen Codeabschnitt in Outlook ausführen, der ein KI-Modell verwendet, so dass ai.exe gestartet, ai.dll geladen und ai.dll das zugehörige KI-Modell geladen und ausgeführt hat, wird, wenn ai.exe beendet wird und Sie einen anderen Codeabschnitt in Outlook ausführen, der dieses Modell verwendet, die ai.exe für dieses Modell neu gestartet, ai.dll neu geladen und ai.dll das Modell neu geladen und ausgeführt.

Für jedes einzelne AI-Modell wird eine eigene ai.exe geladen. Wenn Outlook beispielsweise drei verschiedene AI-Modelle verwendet, werden drei verschiedene ai.exe gestartet, um eine Prozessisolierung zwischen den Modellen zu ermöglichen. Wenn eines der Modelle ausfällt (z. B. aufgrund eines unerwarteten Absturzes), werden die beiden anderen nicht mit heruntergezogen … und, was am wichtigsten ist, auch Outlook wird nicht mit heruntergezogen.

Lokale KI wurde aus mehreren Gründen aus dem Prozess herausgelöst. Hier sind zwei dieser Gründe:

Um den Speicherverbrauch innerhalb der Office-Desktop-Anwendungen unter Windows zu minimieren. Hintergrund: Aufgrund der langen Geschichte von Office verwenden einige Unternehmens- und Privatkunden immer noch Office x86-Desktopanwendungen, da sie über wichtige x86-Add-Ins verfügen, die von Unternehmen hergestellt wurden, die entweder nicht mehr existieren oder keinen erweiterten Support mehr bieten, sodass keine x64- oder ARM64EC-Versionen dieser Add-Ins erstellt werden können. Office x86-Desktopanwendungen sind 32-Bit-Programme, bei denen die maximal verfügbare Speichergröße nur 4 GiB beträgt. Wenn eine x86-Anwendung eine Zuweisungsanforderung für eine beliebige Menge an Speicher stellt, die dazu führen würde, dass der Gesamtspeicher 4 GiB überschreitet, wird diese Anforderung abgelehnt und die Anwendung behandelt diese Ablehnung. Die meisten KI-Modelle (insbesondere Modelle neuronaler Netze) verbrauchen eine beträchtliche Menge an Speicher. Durch die Verlagerung des Großteils des KI-Speicherverbrauchs aus dem Prozess heraus kann eine Office x86-Anwendung den Speicher innerhalb der Anwendung für andere wichtige Zwecke nutzen.

Minimierung des Speicherverbrauchs von Office-Desktop-Anwendungen unter Windows. Hintergrund: Unabhängig davon, ob Sie die x86-, x64- oder ARM64EC-Version von Office-Desktopanwendungen verwenden, verfügt der Computer, auf dem diese Anwendungen ausgeführt werden, über eine begrenzte Menge an physischem Speicher. Wenn dasselbe KI-Modell in mehreren Anwendungen verwendet wird (z. B. dasselbe Modell für die Verarbeitung natürlicher Sprache in Word und Outlook), wird dieses Modell derzeit einmal pro Anwendung geladen (genauer gesagt, einmal pro Prozess). Dieses Modell wird derzeit nicht von verschiedenen Anwendungen gemeinsam genutzt. Die Verlagerung der lokalen KI aus dem Prozess heraus ist der erste von mehreren Schritten zur gemeinsamen Nutzung von KI-Modellen zwischen Office-Desktop-Anwendungen, so dass wir den physischen Speicher auf dem Computer für andere wichtige Zwecke nutzen können.

Fragen und Antworten:

Frage: Warum identifiziert AMD „C:\Program Files\Microsoft Office\root\vfs\ProgramFilesCommonX64\Microsoft Shared\Office16\ai.exe“ als „Alien Isolation“?

Antwort: Weil die AMD-Software entweder falsch konfiguriert ist oder derzeit einen „Fehler“ aufweist. Wenn die AMD-Software korrekt konfiguriert ist, sollten Sie einen Fehlerbericht an AMD senden, damit das Problem behoben werden kann. Eine schnelle Websuche legt nahe, dass Fehlerberichte an AMD über https://www.amd.com/en/support/kb/faq/amdbrt erstellt werden können. Bitte stellen Sie jedoch sicher, dass Sie überprüfen, ob dieser Link tatsächlich für Ihre AMD-Software relevant ist oder ob ein besserer Link existiert.

Frage: Was passiert, wenn ich „C:\Programme\Microsoft Office\root\vfs\ProgrammdateienCommonX64\Microsoft Shared\Office16\ai.exe“ in einen anderen Dateinamen umbenenne (z. B. XXai.exe)?

Antwort: Lokale KI in Office wird nicht mehr funktionieren ( intern werden lokale KI-bezogene Aufrufe sofort fehlschlagen ). Bei der nächsten Office-Aktualisierung (die mindestens einmal im Monat erfolgt, aber je nach Aktualisierungskanal auch häufiger vorkommen kann) wird ai.exe wiederhergestellt, falls es Änderungen gab.

Frage: Hat „C:\Programme\Microsoft Office\root\vfs\ProgramFilesCommonX64\Microsoft Shared\Office16\ai.exe“ derzeit Auswirkungen auf die GPU?

Nein, weder aitrx.dll, ai.exe, ai.dll, mlg.dll noch aimgr.exe sind derzeit für die Nutzung des Grafikprozessors kompiliert. Für diejenigen, die sich mit den Ausführungsanbietern der ONNX Runtime auskennen, wird derzeit nur der CPU-Ausführungsanbieter verwendet. Dies wird sich in naher Zukunft ändern, aber im Moment nutzt die lokale KI in Office-Desktopanwendungen, die diese Binärdateien verwenden, nur die CPU.

Frage: Enthält „C:\Programme\Microsoft Office\root\vfs\ProgramFilesCommonX64\Microsoft Shared\Office16\ai.exe“ Malware oder ist es ein Virus oder ein ähnlicher Exploit?

Nein, die lokalen AI-Binärdateien enthalten keine Malware, keine Viren und keine ähnlichen Exploits … solange ai.exe also von den oben genannten Office-Pfaden stammt und von Microsoft signierter Code bleibt (d. h. seit der Signierung während des offiziellen Office-Builds nicht verändert wurde), ist ai.exe weiterhin unbedenklich. Wenn Ihre Antiviren- oder Anti-Malware-Software ai.exe an diesem Office-Speicherort als Malware, Virus oder eine ähnliche Art von Exploit erkennt und die gültige Codesignatur noch intakt ist, dann hat Ihre Antiviren- oder Anti-Malware-Software höchstwahrscheinlich einen „Bug“ in ihrem Algorithmus zur Erkennung von Malware/Viren. Bitte senden Sie einen Fehlerbericht an den Hersteller der Antiviren- oder Anti-Malware-Software. Es ist zwar immer möglich, dass böswillige Leute alle Sicherheitsvorkehrungen, umfassenden Abwehrmaßnahmen und gründlichen Sicherheitsscans, die im Laufe der Jahre hinzugefügt wurden, umgangen und einen Weg gefunden haben, bösartigen Code vor dem Signieren des Codes hinzuzufügen, aber diese Wahrscheinlichkeit ist sehr gering … also: möglich, aber nicht wahrscheinlich.

Nebenbei bemerkt:

Lokale KI in Office-Desktop-Apps auf macOS, in mobilen Office-Apps auf Android und iOS sowie in Office-Webbrowser-Apps und in progressiven Web-Apps wird derzeit noch prozessbegleitend ausgeführt.

Remote-KI (z. B. der Aufruf eines Office-bezogenen großen Sprachmodells, das in Azure Machine Learning (AML) Managed Online Endpoints gehostet wird) in Office-Desktop-Apps unter Windows wird derzeit noch prozessbegleitend ausgeführt.

Ich hoffe, dies klärt auf.“