XM外汇官网
当前位置: 首页 >  知识分享 >  其它

给你的Word装上“大脑”,AI人工智能ChatGPT4

来源:网络   日期:2023-12-30 11:23:45   浏览:  
1.打开Word,依次点击视图(View)→宏(Macros),取一个“宏”名并点击“创建”(create)。2.删除“宏”(Macros)中原有的代码,将以下代码复制至框中:Sub
word大脑

1.打开Word,依次点击视图(View)→宏(Macros),取一个“宏”名并点击“创建”(create)。

image 3

2.删除“宏”(Macros)中原有的代码,将以下代码复制至框中:
 

Sub chatGPT()
    Dim request As Object
    Dim text As String, response As String, API As String, api_key As String, DisplayText As String, error_result As String
    Dim startPos As Long, status_code As Long
    Dim prompt As String
    Dim selectedText As Range
    'API Info
    API = "https://api.openai.com/v1/chat/completions"
    'API Key
 api_key = "sk-xxxxxxxxxxxxxxxxxxxxxxx"
    If api_key = "" Then
        MsgBox "Error: API key is blank!"
        Exit Sub
    End If
    ' Prompt the user to select text in the document
    If Selection.Type <> wdSelectionIP Then
        prompt = Trim(Selection.text)
        Set selectedText = Selection.Range
    Else
        MsgBox "Please select some text before running this macro."
        Exit Sub
    End If
    'Cleaning
    text = Replace(prompt, Chr(34), Chr(39))
    text = Replace(text, vbLf, "")
    text = Replace(text, vbCr, "")
    text = Replace(text, vbCrLf, "")
    ' Remove selection
    Selection.Collapse
    'Create an HTTP request object
    Set request = CreateObject("MSXML2.XMLHTTP")
    With request
        .Open "POST", API, False
        .setRequestHeader "Content-Type", "application/json"
        .setRequestHeader "Authorization", "Bearer " & api_key
        .send "{""model"": ""gpt-3.5-turbo"",  ""messages"": [{""content"":""" & text & """,""role"":""user""}]," _
             & """temperature"": 1, ""top_p"": 0.7}"
      status_code = .Status
      response = .responseText
    End With
    'Extract content
    If status_code = 200 Then
      DisplayText = ExtractContent(response)      
    'Insert response text into Word document
    selectedText.InsertAfter vbNewLine & DisplayText
    Else
        startPos = InStr(response, """message"": """) + Len("""message"": """)
        endPos = InStr(startPos, response, """")
        If startPos > Len("""message"": """) And endPos > startPos Then
            DisplayText = Mid(response, startPos, endPos - startPos)
        Else
            DisplayText = ""
        End If     
        'Insert error message into Word document
        EDisplayText = "Error : " & DisplayText
        selectedText.InsertAfter vbNewLine & EDisplayText
    End If
    'Clean up the object
    Set request = Nothing
End Sub

Function ExtractContent(jsonString As String) As String
    Dim startPos As Long
    Dim endPos As Long
    Dim Content As String
    startPos = InStr(jsonString, """content"": """) + Len("""content"": """)
    endPos = InStr(startPos, jsonString, "},") - 2
    Content = Mid(jsonString, startPos, endPos - startPos)
    Content = Trim(Replace(Content, "\""", Chr(34)))
    Content = Replace(Content, vbCrLf, "")
    Content = Replace(Content, vbLf, "")
    Content = Replace(Content, vbCr, "")
    Content = Replace(Content, "\n", vbCrLf)
    If Right(Content, 1) = """" Then
      Content = Left(Content, Len(Content) - 1)
    End If
    ExtractContent = Content
End Function

 

将 API 密钥替换api_key为您的实际 API 密钥。创建自己的API密钥。

关闭 VBA 编辑器。

3.按Alt+F8运行宏,然后选择ChatGPT并单击“运行”按钮。

最近更新
Web前端监控的方案

Web前端监控的方案前端监控是一个非常重要的话题,对于业务的发展意义重大,就像遍布在城市各处的探头,实时监测整座城市的运行状况,保证系统的稳定、高效运行。前端监控的意义前


网域购买指南:网域和网址完整差异比较| WordPress 架站前必看!

新手朋友们一开始踏入WordPress 时,一定常常看到,要做好一个WordPress 网站,一定要包含三个要素: 买一个网路空间(主机) 买一个网域-> 这篇文章要讨论的! 安装WordPress 系统带路姬


创业想做网站,自架WordPress 前最好先知道的五件事

新手自架WordPress 前,最常犯哪五个错误?1. 完全排斥英文:WordPress 毕竟是国际型的架站工具,虽然已就有部分中文化,但是难免会需要看一点点可能还没翻译到的英文,英文不好没关系,


相关阅读
别再用破解版office了,通过官方正规途径永久免费获取office使用权

下载Microsoft官方部署工具Office Deployment Tool 新建“office”文件夹 安装运行“Office Deployment Tool”,将解压的文件储存在“office&r


让AI(ChatGPT)帮你选股票,看看到底是亏了还是赚了?

当前位置: 首页 Windows 正文我先问它,你使用的训练数据是截止到哪年哪月哪日?它答:2021年9月。这就好办了,既然2021年9月之后的信息它都不掌握,我就可以让它以当时的信息为基础


爱不释手!PowerPoint的颠覆性对手,一键生成PPT

制作PPT最简单、最强大的AI工具,一键生成PPT,告别挑灯夜战制作演示文稿。Gamma注册链接:官网链接在创建演示材料时,许多人使用 PowerPoint、Google Slides、Keynote 等。然而,你