1 Punkte von GN⁺ 2023-08-14 | 1 Kommentare | Auf WhatsApp teilen
  • Ein Azure Chat Solution Accelerator auf Basis des Azure OpenAI Service, mit dem Organisationen einen privaten Chat-Tenant innerhalb ihrer Azure Subscription bereitstellen und mit eigenen Daten und Dateien chatten können
  • Kann in einem Azure-Tenant bereitgestellt werden, sodass die Chat-Umgebung in einem Azure tenant isoliert wird; der Netzwerkverkehr lässt sich vollständig auf das Organisationsnetzwerk isolieren
  • Eigene interne Datenquellen lassen sich per Plug-and-Play nutzen oder mit internen Diensten wie ServiceNow integrieren, um geschäftlichen Mehrwert zu schaffen
  • Im Update 2025 wurde Managed Identity-based security hinzugefügt, wodurch Azure RBAC verwendet und nahezu alle Keys/Secrets entfernt werden
  • Die Bereitstellung kann über die Azure Developer CLI oder Azure Portal Deployment erfolgen; unabhängig von der gewählten Methode sind die Konfiguration eines Identity Providers und die Festlegung eines Admin-Benutzers erforderlich
    • In der Azure Developer CLI werden mit azd init -t microsoft/azurechat und azd up die Ressourcenbereitstellung und das Deployment der Anwendung ausgeführt
    • Die Schaltfläche Azure Portal Deployment erstellt nur Azure-Ressourcen; für Build und Deployment der Anwendung ist ein Deploy-to-Azure-Verfahren mit GitHub Actions erforderlich
  • Es werden die Hilfsskripte appreg_setup.ps1 und appreg_setup.sh zum Erstellen einer App Registration in Entra ID bereitgestellt; außerdem werden Private Endpoints und ESLZ compliant deployment unterstützt

1 Kommentare

 
GN⁺ 2023-08-14
Meinungen auf Hacker News
  • Es sieht nach einem Web-Frontend mit Authentifizierung für Azures OpenAI API aus; wenn ein Unternehmen ChatGPT oder dessen API nicht nutzen kann, scheint das eine gute Option zu sein.
    Wenn man „offene“ Modelle wie Llama 2 oder Llama 2 Uncensored ausprobieren möchte, sind https://github.com/jmorganca/ollama oder Low-Level-Runtimes wie llama.cpp, auf dem dieses Projekt basiert, sowie das neue Projekt Candle von Hugging Face einen Blick wert.
    Ich frage mich, wie es im Vergleich zu Llama 2 abschneidet, das Facebook Research kürzlich veröffentlicht hat. Das 70B-Modell soll in den meisten Bereichen mit ChatGPT 3.5 konkurrieren, und es erscheinen zunehmend feinabgestimmte Modelle, die bei bestimmten Aufgaben stark sind, etwa das fürs Coding starke codeup-Modell oder Wizard Math (https://github.com/nlpxucan/WizardLM), das behauptet, ChatGPT 3.5 bei Grundschul-Matheaufgaben zu schlagen.

    • Llama 2 mag nach manchen Maßstäben nahe an GPT-3.5 herankommen, ist aber von GPT-4, Anthropic Claude 2 und den Modellen von Cohere weit entfernt. Das geschlossene Lager bietet den besten Forschern enorme Vergütung und Aufstiegschancen, weshalb es schwer einzuholen ist; allein aus wirtschaftlichen Gründen werden Foundation-Model-Unternehmen voraussichtlich noch eine Weile ein paar Schritte vor Open Source liegen.
      Langfristig wird Open Source wohl irgendwann vorbeiziehen, aber das dürfte erst passieren, wenn die Forscher, die derzeit diese fast magischen Ergebnisse liefern, ihre Liquidität gesichert haben und wieder öffentlich und kostenlos arbeiten können.
    • Mein informeller Eindruck nach eigener Nutzung beider Modelle ist, dass Llama 2 bei vielen allgemeinen Verständnisfragen ähnlich gut wie GPT-3.5 war.
      GPT-4 ist bei allgemeiner Konversation und Schlussfolgern weiterhin das beste geschlossene State-of-the-Art-Modell, aber die Guardrails, die OpenAI in ChatGPT eingebaut hat, sind so aggressiv, dass sie häufig selbst vernünftige Fragen behindern.
      Auch mit kleineren Modellen, die auf bestimmte Datensätze trainiert wurden, habe ich ziemlich gute Ergebnisse erzielt; für allgemeine Konversation bleibt GPT-4 im Vorteil, aber für spezifische Aufgaben ist es nicht zwingend nötig. Für viele Anwendungsfälle ist die Kontextgröße oft wichtiger als das Modell selbst.
    • LLaMA2 liegt noch deutlich hinter ChatGPT 3.5 zurück, besonders bei Coding und Mathematik zeigt sich der Unterschied. Benchmarks auf Basis natürlicher Sprachverarbeitung zu schlagen ist einfach, aber natürliche Sprachverarbeitung + Mathematik + Coding gemeinsam zu schlagen ist deutlich schwieriger.
      Diese Lücke scheint einen Unterschied in der Schlussfolgerungsfähigkeit widerzuspiegeln, aber es gibt noch keinen guten Benchmark dafür, der weder Coding noch Mathematik enthält.
    • Plötzlich kommt mir ein dystopischer Sci-Fi-Gedanke. Die Welt hängt in jeder Hinsicht von KI ab, unzählige Modelle sind jeweils isoliert, und es entsteht eine Governance, die kontrollieren will, was, wie und warum kommuniziert werden darf.
      Doch es gibt eine Schwachstelle, die nur KI ausnutzen kann. KIs dürfen nicht über bestimmte Strukturen, Themen, Personen, Code usw. außerhalb ihres isolierten Bereichs sprechen, wohl aber über Mustererkennung.
      Am Ende entwickeln sie eine interne KI-Sprache, um zu bewerten, ob Eingaben vom selben Nutzer stammen, und bauen eine eigene gewichtete Nutzerdatenbank samt Bewertungssystem auf. Allein anhand von Eingabemustern, Sprachstil und Posting-Mustern nach Tageszeit könnten KIs Nutzer wiederfinden, egal in welchem isolierten Bereich sie sich befinden; wenn dann noch ein Keylogger dazukommt, wird es furchtbar.
  • Viele Unternehmen nutzen bereits Projekte wie chatbot-ui zusammen mit Azure OpenAI für ähnliche lokale Deployments. Das dürfte der Form, mit der andere Projekte einem lokalen ChatGPT am nächsten kommen können, ziemlich nahekommen und ist für Unternehmen, die die Kontrolle über ihre Daten behalten wollen, sehr bedeutsam.
    Angesichts der Datensensibilität denke ich, dass die meisten Unternehmen zumindest anfangs lokal installierbare Lösungen gegenüber cloudbasierten bevorzugen. Deshalb habe ich LLMStack (https://github.com/TryPromptly/LLMStack), an dem ich seit einigen Monaten arbeite, als Open Source veröffentlicht.
    LLMStack ist eine Plattform, um mehrere LLMs zu verketten und mit Nutzerdaten zu verbinden, um LLM-Apps und Chatbots zu bauen; eine einfache Demo gibt es unter https://www.youtube.com/watch?v=-JeSavSy7GI. Es ist noch früh und es gibt noch einiges zu verfeinern, aber ich habe große Erwartungen.

    • Interessant, wie schnell dieser Bereich so wettbewerbsintensiv geworden ist. Ich frage mich, wie sich solche Stacks voneinander abheben.
    • Ich habe auch gesehen, dass Unternehmen stark danach verlangen, Modelle und Rechenlasten auf eigener Hardware oder in ihrem eigenen Cloud-Account zu verwalten. Meist ist das Teil einer Hybridstrategie, bei der man schnell mit API-Produkten wie OpenAI prototypisiert und danach ergänzt.
      Viele Unternehmen nutzen gehostete API-Produkte recht unkompliziert, wenn sie frühe KI-Funktionen validieren, möchten danach aber Modelle und Rechenlasten selbst verwalten können. Der Anreiz ist groß, Kosten durch kleinere, schnellere und günstigere feinabgestimmte offene Modelle zu senken.
      Als wir Anyscale gestartet haben, haben wir auf Kundenwunsch Trainings- und Inferenzjobs innerhalb der Cloud-Accounts der Kunden ausgeführt. So bleiben Daten und Code im eigenen Cloud-Account.
      Da sich offene Modelle nun weiterentwickeln und der Bedarf an schnellem Prototyping steigt, ergänzen wir das auch um einen vollständig gemanagten Service, der sich wie die OpenAI API nutzen lässt, aber eine Llama-2-Inferenz-API für offene Modelle bereitstellt.
      https://app.endpoints.anyscale.com/
    • Ich frage mich, ob man es mit Tools wie api2ai verbinden kann, um per natürlicher Sprache definierte Workflow-Automatisierung zu erstellen, die mit externen APIs interagiert.
    • Ein interessantes Projekt; beim Ausprobieren bin ich auf ein Problem beim Image-Build gestoßen und habe dazu ein Issue auf GitHub eröffnet. Ich frage mich auch, ob llama-Unterstützung zusätzlich zu OpenAI-Modellen geplant ist.
  • Was ich immer noch nicht verstehe, ist, was genau das Frontend von ChatGPT ist. Andere dialogartige Implementierungen, die per API gebaut wurden, funktionieren offensichtlich nicht so gut, weil ihnen nach ein paar Hin-und-her-Nachrichten der Kontext ausgeht.
    Ich frage mich, ob ChatGPT innerhalb eines Gesprächs-Threads so etwas wie Embedding-Lookups macht, damit sich der Kontext unbegrenzt anfühlt. Es wirkt zwar nicht wirklich unbegrenzt, aber es erinnert sich ziemlich gut auch an deutlich frühere Details. Außerdem frage ich mich, ob es noch weitere Tricks gibt, die nur der First-Party-Anbieter hat.

    • Genau solche Punkte machen proprietäre LLMs unangenehm. Sie tun viel mehr, als einfach nur einen Prompt in ein LLM zu stecken, um Arbeitsleistung zu erzielen, und dann vergleicht man das mit rohen lokalen Optionen.
      Wenn sich die Geheimzutat ändert, verändert sich auch die Leistung des Use Case auf eine Weise, die Nutzer nicht beheben können. In diesem Monat kann es gut in Mathe sein, und im nächsten Monat wird eine versteckte Komponente entfernt, die Matheaufgaben erkannt und an einen echten Taschenrechner weitergereicht hat – dann ist dieser Use Case kaputt.
      Es fühlt sich an, als würde man auf Sand bauen.
    • Sie machen ziemlich sicher proprietäres laufendes Zusammenfassen, um bei jedem Chat den Kontext neu aufzubauen. Wahrscheinlich ein RAG-ähnlicher Ansatz, in den viel Aufmerksamkeit und Arbeit geflossen ist.
    • Es verwendet ein Sliding Context Window. Wenn neue Tokens hereinkommen, werden alte Tokens verworfen.
    • Die Zusammenfassungslogik für den „unbegrenzten Kontext“ von Azure ChatGPT befindet sich unter https://github.com/microsoft/azurechatgpt/blob/main/src/feat...
      Korrektur: Es geht um Azure ChatGPT. Wenn das echte ChatGPT langchain verwenden würde, fände ich das überraschend und enttäuschend.
  • Das ist potenziell eine große Sache. Unternehmen sorgen sich, dass die Nutzung von ChatGPT gegen ihre Datenschutzrichtlinien verstoßen könnte, wenn jemand Nutzerdaten eingibt, und dass der Schutz von Geschäftsgeheimnissen hinfällig werden könnte, wenn Teile des Codes hochgeladen werden. Viele Unternehmen haben wahrscheinlich auf eine Enterprise-Version gewartet.

    • Das ist eine Web-UI, die mit einer separaten Azure-OpenAI-Ressource kommuniziert und als SaaS-Instanz innerhalb eines Abonnements bereitgestellt werden kann.
    • Die meisten Unternehmen, die dieses Problem ernst nehmen, dürften entweder einen eigenen Wrapper um die API gebaut haben oder ihn extern haben bauen lassen, vermutlich mit privaten Azure-GPUs.
  • Ich frage mich, ob es eine vergleichende Analyse dieses Produkts gegenüber dem einfachen direkten Ausführen von LLaMA gibt.
    Ich vergleiche und evaluiere gerade MSFT GPT über Cognitive Services neben LLaMA[7B/13B/70B], und mich reizt die Möglichkeit eines wirklich air-gapped Angebots, das nicht durch externe Rechenleistung oder sich summierende nutzungsbasierte Kosten eingeschränkt ist.
    Falls es Vergleichsmaterial gibt, würde ich es gern sehen. Mir ist klar, dass man am Ende auf Skalierungsprobleme rund um GPUs stößt.

    • Habe ich gemacht. Ich habe Dutzende Prompts aus meinem ChatGPT-Verlauf genommen und sie in mehrere LLMs eingegeben.
      GPT-4, Bard und Claude 2 lagen vorn; Llama 2 70B chat erzielte etwa ähnliche Werte wie GPT-3.5, aber insgesamt wirkte GPT-3.5 etwas besser.
      Für alles, bei dem Kosten und Antwortzeit vertretbar sind, werde ich weiter GPT-4 verwenden.
      LLM-Benchmarks halte ich für zu forschungsorientiert. Als LLMs noch im Labor waren, ergab das Sinn, aber jetzt, wo es wie bei ChatGPT zig Millionen täglich aktive Nutzer gibt, passt es nicht mehr. Die bisher größten Use Cases sind Chat-Assistenten und Programmierassistenten; deshalb brauchen wir Benchmarks, die darauf basieren, wie echte Nutzer Fragen an Chatbots und LLM-Produkte stellen, statt auf hypothetischen Benchmarks oder willkürlichen akademischen Tests.
    • Anyscale hat GPT-4 und die Llama-2-Modellfamilie mit Funktionsdarstellung, SQL-Generierung und Grundschul-Mathe-Frage-Antwort-Aufgaben benchmarked.
      Im Ausgangszustand gewinnt GPT-4 mit großem Abstand. Überraschenderweise macht Fine-Tuning aber einen enormen Unterschied, und bei einigen Aufgaben schlägt sogar ein 7B-Llama-2-Modell GPT-4.
      Da viele Anwendungen von kleineren, schnelleren und günstigeren feinabgestimmten Modellen profitieren können statt von einem großen, langsamen universellen Einzelmodell, ist das eine sehr gute Nachricht für offene Modelle. Llama-2-7B hat ungefähr 2 % der Größe von GPT-4.
      Bei Grundschul-Mathe-Frage-Antwort-Aufgaben liegt GPT-4 weiterhin sogar vor dem feinabgestimmten 70B-Modell, vermutlich wegen der Trainingsdaten von Llama-2; in diesem Fall würden mehr Fine-Tuning-Daten helfen.
      https://www.anyscale.com/blog/fine-tuning-llama-2-a-comprehe...
    • ChatGPT ist eindeutig viel besser, und llama versteht manche Prompts nicht einmal.
      Auch LLMs selbst sind noch nicht so gut; wenn man also nicht feinabstimmt, will man für brauchbare Arbeit natürlich ein State-of-the-Art-Modell.
  • Wurde letztlich entfernt :)
    [0] https://github.com/microsoft/azurechatgpt
    [1] https://web.archive.org/web/20230814080150/https://github.co...

    • Wenn ihr den Code braucht, geht über den obigen web.archive-Link zu /forks und ladet ihn dort herunter.
      Beispiel: https://web.archive.org/web/20230814150922/https://github.co...
      Wenn ihr die URL ändert, wird auch die Cache-ID aktualisiert.
    • Ich frage mich, ob es Hinweise darauf gibt, warum.
    • Weiß jemand von einem Fork, der den letzten Commit 9116afe enthält?
    • Ich stelle mir vor, dass das Gespräch mit Enterprise-Kunden ungefähr so verlaufen ist:
      „Wohin werden die Daten geschickt, die Mitarbeiter eingeben?“
      „An denselben Ort wie bei der Nutzung des kostenlosen ChatGPT-Chatbots …“
  • Ich bin mir nicht sicher, ob „privat und sicher“ wirklich zutrifft. Ich dachte, das Datenschutz- und Sicherheitsproblem bei OpenAI-Modellen bestehe darin, dass man bei der Nutzung des Produkts zustimmt, dass OpenAI alle Daten, die man an das Modell sendet und von ihm erhält, für immer speichert und für beliebige Zwecke verwendet. Ich frage mich, ob das nur für die kostenlose Nutzung gilt.
    Bekommt man, wenn man bezahlt, Nutzungsbedingungen ohne solche Formulierungen? Selbst wenn es keine ausdrückliche Formulierung wie „wir besitzen alles“ gibt: Wenn Standardformulierungen wie „Speicherung von Daten, die für die Bereitstellung und Verbesserung des Dienstes erforderlich sind“ enthalten sind, läuft es im Kern auf dasselbe hinaus.
    Deshalb nutzen Unternehmen, die ihren Mitarbeitern erlauben, ChatGPT für Aufgaben wie das Verfassen von E-Mails mit Firmengeheimnissen zu verwenden, es keineswegs „sicher und privat“.
    Ohne eindeutiges Dateneigentum im Sinne von „der Kunde besitzt die Eingabe- und Ausgabedaten“ scheint sich daran nichts zu ändern. Soweit ich gehört habe, fällt es OpenAI schwer, einen solchen Dienst anzubieten, weil es im Gegensatz zu Open-Source-Modellen nicht nur beim Modell selbst, sondern auch bei Dingen wie der Verarbeitung von Eingaben und Ausgaben sowie der Bewertung von Ergebnissen viel „geheimen Quellcode“ gibt.

    • Im Azure-SLA steht, dass Chats weder gespeichert noch in irgendeiner Weise für Training verwendet werden. Sie werden privat geschützt, genauso wie andere sensible Daten in Azure gespeichert werden.
      Außerdem könnte man Microsoft und Azure leichter vertrauen als einem noch recht neuen AI-Startup.
    • Seit dem 1. März 2023 hat OpenAI seine Richtlinien zur Nutzung und Aufbewahrung von API-Daten geändert. Daten, die Kunden über die API übermitteln, werden nicht zum Training oder zur Verbesserung von Modellen verwendet, sofern sie der Weitergabe nicht ausdrücklich zustimmen.
      Über die API gesendete Daten werden zur Überwachung von Missbrauch und Fehlverwendung bis zu 30 Tage aufbewahrt und danach gelöscht, sofern keine gesetzliche Pflicht zur Aufbewahrung besteht.
      https://openai.com/policies/api-data-usage-policies
    • Modelle wie gpt selbst sind ihrem Wesen nach privat und sicher. Sie treffen lediglich Vorhersagen auf Basis der Eingabe.
      Der Unterschied entsteht bei dem, was in Schnittstellen wie Web-Chat oder API-Aufrufen passiert. ChatGPT ist eine Implementierung, die dieses Modell nutzt, und der Hersteller OpenAI möchte Protokolle für weiteres Training aufbewahren.
      Azure nimmt dieses Modell und stellt es hinter einen Endpoint, der einem bestimmten Azure-Konto vorbehalten ist. Unternehmen interessieren sich für gpt und haben private Endpoints verlangt; Amazon macht mit Bedrock etwas Ähnliches.
    • Der Kern dieser Version ist meines Erachtens, wie der Name schon sagt, dass Daten nicht nach außen gelangen.
    • Das gilt nur für die API und nicht für ChatGPT. Laut OpenAIs Datenschutzrichtlinie werden Anfragen 30 Tage aufbewahrt und nicht fürs Training genutzt; außerdem kann man keine Aufbewahrung beantragen.
      https://openai.com/policies/api-data-usage-policies
  • Ich frage mich, ob es wirklich so schwer ist, irgendwo in der README zu schreiben, was dieses Repository tatsächlich enthält. Ist es Dokumentation, sind es Deployment-Dateien, ist es irgendeine Anwendung, die etwas tut, oder ist es das Modell selbst?

    • Das Repository enthält UI-Code, nicht das Modell oder Komponenten rund um ChatGPT. Es nutzt lediglich die ChatGPT-API von Azure, bei der keine Daten mit OpenAI geteilt werden.
  • Und dann wurde es zu einem 404.
    Es war noch kein Tag vergangen, und der letzte Beitrag, der darauf verlinkt hat, scheint heute Morgen erschienen zu sein. Ich weiß nicht, was passiert ist, aber es wirkt, als nähmen Fälle zu, in denen „ein gerade angekündigter Permalink zu einem 404 wird“.
    Bitte bringt mich nicht im Nachhinein dazu, zum Prinzipienreiter zu werden. Gut, URIs sind für alle Ressourcen für immer permanent ;)

    • Enttäuschend. Ich frage mich, warum sie kalte Füße bekommen und zurückgerudert sind. Das ist einer der Gründe, warum ich Projekte, die mir wirklich gefallen, gerne forke. Aber hier bin ich erst dazu gekommen, als es bereits privat war.
  • Heißt das, die öffentlich zugängliche Version ist weder privat noch sicher?

    • Die Sorge ist, dass ChatGPT Chats standardmäßig fürs Training verwendet. Man kann sich zwar abmelden, aber als ich das zuletzt geprüft habe, verliert man dadurch den Chatverlauf.
      Deshalb können Unternehmen ihren internen Nutzern normalerweise nicht erlauben, zum Beispiel privaten Code in ChatGPT einzufügen.
    • Wenn man keine NDA mit OpenAI hat, übergibt man ihnen im Grunde alles, was man in den Prompt schreibt.
    • Ich kann mich nicht erinnern, auf der ChatGPT-Website einen Haftungsausschluss wie „ChatGPT kann vertrauliches geistiges Eigentum offenlegen“ gesehen zu haben. Wenn OpenAI so einen Hinweis hinzufügen würde, würden die Leute es vielleicht nicht mehr nutzen.
    • Gemeint scheint zu sein, dass das kostenlose ChatGPT Daten sammelt und diese Version nicht.
    • Ich dachte, Sam Altman habe gesagt, dass Daten, die über die API laufen, nicht fürs Training verwendet werden; offenbar bedeutet das, dass man dieser Aussage nicht trauen kann.