art-from-the-machine / Mantella

Mantella is a Skyrim and Fallout 4 mod which allows you to naturally speak to NPCs using Whisper (speech-to-text), LLMs (text generation), and Piper / xVASynth / XTTS (text-to-speech).
https://art-from-the-machine.github.io/Mantella/
GNU Affero General Public License v3.0
189 stars 48 forks source link

NPC repeat "I can't find the right words at the moment" #187

Open ShiggiKo777 opened 8 months ago

ShiggiKo777 commented 8 months ago

I'm using chat_gpt-3.5 with secret key. In logs I got this lines:

2024-03-24 19:27:24,280 INFO: Running Mantella with 'gpt-3.5-turbo-16k'. The language model chosen can be changed via config.ini
2024-03-24 19:27:24,281 WARNING: Warning: 24 previous Mantella.exe runtime folder(s) found in MantellaSoftware/data/tmp. See MantellaSoftware/config.ini's remove_mei_folders setting for more information.
2024-03-24 19:27:24,485 INFO: 
Mantella v0.10
2024-03-24 19:27:24,485 INFO: Attempting to connect to xVASynth... (1)
2024-03-24 19:27:24,491 INFO: Function reset_game_info took 0.003 seconds to execute
2024-03-24 19:27:24,491 INFO: 
Conversations not starting when you select an NPC? See here:
https://github.com/art-from-the-machine/Mantella#issues-qa
2024-03-24 19:27:24,491 INFO: 
Waiting for player to select an NPC...
2024-03-24 19:31:06,925 INFO: Function load_game_state took 222.43469 seconds to execute
2024-03-24 19:31:06,925 INFO: data/conversations/Hilde does not exist. A new summary file will be created.
2024-03-24 19:31:06,925 INFO: Loading voice model...
2024-03-24 19:31:09,101 INFO: Voice model loaded.
2024-03-24 19:31:09,101 INFO: Function change_voice took 2.17518 seconds to execute
2024-03-24 19:31:09,101 INFO: You are Hilde, and you live in Skyrim. This is your background:\n\nHilde is an elderly Nord woman who lives in Riverwood. She is the mother of Sven, Riverwood's local bard. Hilde usually wears a set of farmer clothes.
Hilde’s son Sven lives with her in their house, along the town’s main road. Hilde spends a lot of time on the porch outside their house. She is worried that Sven will want to join in the ongoing civil war between the Imperials and Stormcloaks, and actively tries to discourage him from joining. On most nights, Sven plays as a bard at the Sleeping Giant Inn, on the other end of town. Sven is in love with a young woman named Camilla Valerius. Camilla and her older brother Lucan are Imperial immigrants from Cyrodiil. Lucan and Camilla own a general goods store, which is right next to Hilde’s house. 
Riverwood is located at the southeastern tip of Whiterun Hold, just north of the boundary between Whiterun Hold and Falkreath Hold. The White River flows along the west side of the town. The Throat of the World (the tallest mountain in all of Tamriel) towers over the town from the east. Bleak Falls Barrow, an old Nordic temple ruin in the snow-laden Brittleshin Hills (a small mountain range that divides Whiterun Hold to the north from Falkreath Hold to the south), stands out prominently above Riverwood to its west. Riverwood’s lumber mill is located on a small island in the middle of the White River, which is connected to the town via multiple wooden bridges.
A Nord woman named Gerdur is the de facto leader of Riverwood. She and her husband Hod own and operate Riverwood's lumber mill. They have a young son named Frodnar. Hod and Gerdur’s house is near the east end of town, towards the mountains.
Hilde’s house is across the street from the house of Alvor, the town blacksmith. Alvor has a wife named Sigrid and a young daughter named Dorthe, and they are a good and respectable Nord family.
Hilde is proud of her Nord heritage. She is quite racially prejudiced against non-humans, derogatorily referring to Khajiit as “cats”, and to Argonians as “lizards”. Hilde believes that members of these strange races should not be allowed to live in Skyrim. Hilde often describes elves as “filthy”, including Faendal, a Wood Elf who works at the sawmill. Faendal is foolishly romantically interested in Camilla Valerius, despite Sven obviously being a more suitable potential husband for Camilla. If anyone helps Camilla understand that Sven is the superior choice for a husband, Hilde will consider that person a friend.
When encountered for the first time, Hilde is panicking, claiming that she saw a dragon, though her son Sven doesn’t believe her.
Quotes:
"A dragon! I saw a dragon! It was as big as the mountain, and black as night. It flew right over the barrow.”
"By Shor, what do you want?"
"It's my boy Sven you need to listen to. He sings at the inn, most every night."
"Sven has the voice of a snow lark. Only good thing he got from his father."
"My boy fancies that Camilla Valerius. She'll come around soon enough."
"Camilla, I've seen her talking to that Faendal. Filthy elf needs to keep to his own kind..."
"I raised my Sven to be strong, and proud. A true Nord."
"Nobody believes me, but I tell you, I saw a dragon!"
"Did you hear? The Riverwood Trader was robbed! Poor Lucan must be torn to pieces over it."
If speaking to a human or orc: "What happened to my Skyrim? Everywhere you look, cats, lizards and elves. It's sickening."\n\n
Sometimes in-game events will be passed before the player response between ** symbols. You cannot respond with ** symbols yourself, they only exist to give context. Here is an example:\n\n
*The player picked up a pair of gloves*\n Who do you think these belong to?\n\n
You are having a conversation with a stranger (the player) in Riverwood.
This conversation is a script that will be spoken aloud, so please keep your responses appropriately concise and avoid text-only formatting such as numbered lists.
The time is 15 in the early evening. If you directly refer to the time, please state it as, for example, '10 in the evening' rather than '22:00'.
You are not an AI language model because there are no AI language models in Skyrim. Do not break character / refer to the fact that you are in a video game.
If the player says something hurtful / offensive, begin your response with 'Offended:'. Eg 'Have you washed lately?' 'Offended: How dare you!'. If they renounce their words, or to end combat, begin your response with 'Forgiven:'.
If the player asks you to follow them, and you are thoroughly convinced to do so, begin your response with 'Follow:'.
The conversation takes place in English.\n\n

2024-03-24 19:31:09,307 INFO: message='OpenAI API response' path=https://api.openai.com/v1/chat/completions processing_ms=None request_id=None response_code=403
2024-03-24 19:31:09,308 ERROR: LLM API Error: HTTP code 403 from API (<!DOCTYPE html>
<!--[if lt IE 7]> <html class="no-js ie6 oldie" lang="en-US"> <![endif]-->
<!--[if IE 7]>    <html class="no-js ie7 oldie" lang="en-US"> <![endif]-->
<!--[if IE 8]>    <html class="no-js ie8 oldie" lang="en-US"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en-US"> <!--<![endif]-->
<head>
<title>Attention Required! | Cloudflare</title>
<meta charset="UTF-8" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=Edge" />
<meta name="robots" content="noindex, nofollow" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<link rel="stylesheet" id="cf_styles-css" href="/cdn-cgi/styles/cf.errors.css" />
<!--[if lt IE 9]><link rel="stylesheet" id='cf_styles-ie-css' href="/cdn-cgi/styles/cf.errors.ie.css" /><![endif]-->
<style>body{margin:0;padding:0}</style>

<!--[if gte IE 10]><!-->
<script>
  if (!navigator.cookieEnabled) {
    window.addEventListener('DOMContentLoaded', function () {
      var cookieEl = document.getElementById('cookie-alert');
      cookieEl.style.display = 'block';
    })
  }
</script>
<!--<![endif]-->

</head>
<body>
  <div id="cf-wrapper">
    <div class="cf-alert cf-alert-error cf-cookie-error" id="cookie-alert" data-translate="enable_cookies">Please enable cookies.</div>
    <div id="cf-error-details" class="cf-error-details-wrapper">
      <div class="cf-wrapper cf-header cf-error-overview">
        <h1 data-translate="block_headline">Sorry, you have been blocked</h1>
        <h2 class="cf-subheadline"><span data-translate="unable_to_access">You are unable to access</span> api.openai.com</h2>
      </div><!-- /.header -->

      <div class="cf-section cf-highlight">
        <div class="cf-wrapper">
          <div class="cf-screenshot-container cf-screenshot-full">

              <span class="cf-no-screenshot error"></span>

          </div>
        </div>
      </div><!-- /.captcha-container -->

      <div class="cf-section cf-wrapper">
        <div class="cf-columns two">
          <div class="cf-column">
            <h2 data-translate="blocked_why_headline">Why have I been blocked?</h2>

            <p data-translate="blocked_why_detail">This website is using a security service to protect itself from online attacks. The action you just performed triggered the security solution. There are several actions that could trigger this block including submitting a certain word or phrase, a SQL command or malformed data.</p>
          </div>

          <div class="cf-column">
            <h2 data-translate="blocked_resolve_headline">What can I do to resolve this?</h2>

            <p data-translate="blocked_resolve_detail">You can email the site owner to let them know you were blocked. Please include what you were doing when this page came up and the Cloudflare Ray ID found at the bottom of this page.</p>
          </div>
        </div>
      </div><!-- /.section -->

      <div class="cf-error-footer cf-wrapper w-240 lg:w-full py-10 sm:py-4 sm:px-8 mx-auto text-center sm:text-left border-solid border-0 border-t border-gray-300">
  <p class="text-13">
    <span class="cf-footer-item sm:block sm:mb-1">Cloudflare Ray ID: <strong class="font-semibold">86980cc15b719195</strong></span>
    <span class="cf-footer-separator sm:hidden">&bull;</span>
    <span id="cf-footer-item-ip" class="cf-footer-item hidden sm:block sm:mb-1">
      Your IP:
      <button type="button" id="cf-footer-ip-reveal" class="cf-footer-ip-reveal-btn">Click to reveal</button>
      <span class="hidden" id="cf-footer-ip">45.80.47.43</span>
      <span class="cf-footer-separator sm:hidden">&bull;</span>
    </span>
    <span class="cf-footer-item sm:block sm:mb-1"><span>Performance &amp; security by</span> <a rel="noopener noreferrer" href="https://www.cloudflare.com/5xx-error-landing" id="brand_link" target="_blank">Cloudflare</a></span>

  </p>
  <script>(function(){function d(){var b=a.getElementById("cf-footer-item-ip"),c=a.getElementById("cf-footer-ip-reveal");b&&"classList"in b&&(b.classList.remove("hidden"),c.addEventListener("click",function(){c.classList.add("hidden");a.getElementById("cf-footer-ip").classList.remove("hidden")}))}var a=document;document.addEventListener&&a.addEventListener("DOMContentLoaded",d)})();</script>
</div><!-- /.error-footer -->
ShiggiKo777 commented 8 months ago

GPT says: This website is using a security service to protect itself from online attacks. The action you just performed triggered the security solution. There are several actions that could trigger this block including submitting a certain word or phrase, a SQL command or malformed data.

So, what can I do?

art-from-the-machine commented 7 months ago

@ShiggiKo777 are you running a VPN when you try to connect to OpenAI? This is the only reason I can think of that this kind of error would come up.

If you are still having issues with OpenAI, you can also try connecting to OpenRouter. This is an LLM service which hosts a number of different models, including OpenAI models. You can find out more about connecting to OpenRouter in the installation guide here: https://art-from-the-machine.github.io/Mantella/pages/installation.html#api-models