Um ChatGPT in Microsoft Access zu verwenden, können Sie eine Integration erstellen, die es ermöglicht, mit der GPT-API von OpenAI zu kommunizieren. Hier sind die grundlegenden Schritte, um das LLM (KI bzw. AI) in Access zu integrieren:
- API-Schlüssel von OpenAI erhalten: Registrieren Sie sich bei OpenAI und beantragen Sie einen API-Schlüssel „API-KEY“. Dieser Schlüssel ist notwendig, um Anfragen an die GPT-API zu senden. Die Verwendung der Schnittstelle ist kostenpflichtig und erfordert ein Guthaben. Die Dokumention und Kosten finden Sie bei OpenAI.
- HTTP-Anfragen in VBA erstellen: Sie müssen eine HTTPS-Anfrage an die GPT-API senden, um eine Antwort von ChatGPT zu erhalten. Dies kann mit dem XMLHTTP-Objekt in VBA durchgeführt werden. Die Übergabe erfolgt im JSON-Format.
- JSON-Antwort zerlegen: Um die JSON-Antwort von der API zu verarbeiten, benötigen Sie einen JSON-Parser für VBA. Eine beliebte Wahl ist der JsonConverter. Laden Sie das ZIP herunter und importieren Sie „JsonConverter.bas“ in Ihr VBA-Projekt.
Option Compare Database
Option Explicit
Private Const API_KEY As String = "geheimer API KEY"
Private Const ENDPOINT As String = "https://api.openai.com/v1/chat/completions"
Sub TestChatGPT()
MsgBox GetChatGPTResponse("Erkläre den Nutzen von Microsoft Access.")
End Sub
Function GetChatGPTResponse(prompt As String) As String
Dim objXml As New MSXML2.ServerXMLHTTP60 ' erfordert den Verweis auf "MSXML2.ServerXMLHTTP.6.0"
Dim objJson As Object ' erfordert den Import von "JsonConverter.bas" aus https://github.com/VBA-tools/VBA-JSON
Dim memBody$, memResponse$, memMessage$, memReturn$
' JSON Body für die API-Anfrage, ggfs. "150" Buchstaben aus max_tokens anpassen!
memMessage = """messages"": [{""role"": ""user"", ""content"": """ & prompt & """}],""temperature"": 0.7"
memBody = "{" & memMessage & ", ""max_tokens"": 150, " & """model"": ""gpt-3.5-turbo""" & "}"
' HTTPS-Anfrage erstellen
Set objXml = CreateObject("MSXML2.ServerXMLHTTP.6.0")
objXml.Open "POST", ENDPOINT, False
objXml.setRequestHeader "Content-Type", "application/json"
objXml.setRequestHeader "Authorization", "Bearer " & API_KEY
' Anfrage senden
objXml.send memBody
' Antwort verarbeiten
memResponse = objXml.responseText
' JSON zerlegen
Set objJson = JsonConverter.ParseJson(memResponse)
' ggfs. Fehlerverarbeitung ergänzen
memReturn = objJson("choices")(1)("message")("content")
' Rückgabe
Set objJson = Nothing
Set objXml = Nothing
GetChatGPTResponse = memReturn
End Function
Comments are closed