farizrahman4u / loopgpt

Modular Auto-GPT Framework
MIT License
1.43k stars 131 forks source link

Enviroment file #16

Closed oyvindhagen2 closed 1 year ago

oyvindhagen2 commented 1 year ago

Hi, Could you include and inviroment file that can be edited directly?

maker57sk commented 1 year ago

Inside loopgpt dir rename [.env.template] to [.env] and change the "REPLACE-THIS-WITH-YOUR-API-KEY" with your open ai api key

devsktlabs commented 1 year ago

even after adding .env file with open_api_key I receive environment variable error. api key not found. i've placed it in root directory as well as /loopgpt directory and still the same error. Anyone else running into this?

tylerlindell commented 1 year ago

even after adding .env file with open_api_key I receive environment variable error. api key not found. i've placed it in root directory as well as /loopgpt directory and still the same error. Anyone else running into this?

OPENAI_API_KEY should be all caps. it seems to work for me.

FayazRahman commented 1 year ago

even after adding .env file with open_api_key I receive environment variable error. api key not found. i've placed it in root directory as well as /loopgpt directory and still the same error. Anyone else running into this?

Hey @devsktlabs, can you tell me if you are using windows?

tylerlindell commented 1 year ago

even after adding .env file with open_api_key I receive environment variable error. api key not found. i've placed it in root directory as well as /loopgpt directory and still the same error. Anyone else running into this?

Hey @devsktlabs, can you tell me if you are using windows?

I recognize you are addressing @devsktlabs directly but to clarify on my end, I am on Windows 10 and it is working for me.

devsktlabs commented 1 year ago

Using windows 11

tylerlindell commented 1 year ago

@devsktlabs can you copy/paste your .env here? Please hide any sensitive data.

more detail would be good on the commands you're running, which cli you're using, etc. give us the ability to reproduce :-)

devsktlabs commented 1 year ago

I've tried like this OPENAI_API_KEY = "sk-mykey"

also like this OPENAI_API_KEY=sk-mykey

devsktlabs commented 1 year ago

Using autogpt daily and no issues on that one btw

tylerlindell commented 1 year ago

same here but I'm not facing issues on either repo :-)

what does the CLI output or error look like? screenshot or something?

devsktlabs commented 1 year ago
image
tylerlindell commented 1 year ago

which directory is the .env file? is the name of the .env file exactly that without whitespace?

FayazRahman commented 1 year ago

@tylerlindell Thanks for confirming its working on your end. @devsktlabs Have you enabled "show file extension" on windows? The env file in our repo is .env.template, so if the "show file extension" is not enabled, the .template will be hidden. If this is the case, you need to change it so that the file name is just .env

devsktlabs commented 1 year ago
image

maybe its possible docker is messing it up. I can try to pull fresh

tylerlindell commented 1 year ago

I'm using it w/o docker

devsktlabs commented 1 year ago

Same outcome with a fresh clone... hmm at a loss on this one

tylerlindell commented 1 year ago

what directory are you within while trying to run your python command?

devsktlabs commented 1 year ago

the fresh clone is in /looptest, .env is in /looptest and I am running "loopgpt run" in the same directory.

devsktlabs commented 1 year ago
image
tylerlindell commented 1 year ago

try python ./examples/research_gpt.py

devsktlabs commented 1 year ago

PS C:\looptest> python ./examples/research_gpt.py WARNING: OpenAI API Key not found. Please set theOPENAI_API_KEY` environment variable. LoopGPT cannot work without it. See https://github.com/farizrahman4u/loopgpt#-requirements for more details

+------------------------------------------------------------+ | ██╗░░░░░░█████╗░░█████╗░██████╗░░██████╗░██████╗░████████╗ | | ██║░░░░░██╔══██╗██╔══██╗██╔══██╗██╔════╝░██╔══██╗╚══██╔══╝ | | ██║░░░░░██║░░░░██░░░░██║██████╔╝██║░░██╗░██████╔╝░░░██║░░░ | | ██║░░░░░██║░░██║██║░░██║██╔═══╝░██║░░╚██╗██╔═══╝░░░░██║░░░ | | ███████╗╚█████╔╝╚█████╔╝██║░░░░░╚██████╔╝██║░░░░░░░░██║░░░ | | ╚══════╝░╚════╝░░╚════╝░╚═╝░░░░░░╚═════╝░╚═╝░░░░░░░░╚═╝░░░ | +------------------------------------------------------------+

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Traceback (most recent call last): File "C:\looptest\examples\researchgpt.py", line 16, in agent.cli() File "C:\Users\tumol\AppData\Local\Programs\Python\Python311\Lib\site-packages\loopgpt\agent.py", line 471, in cli cli(self, continuous=continuous) File "C:\Users\tumol\AppData\Local\Programs\Python\Python311\Lib\site-packages\loopgpt\loops\repl.py", line 114, in cli resp = agent.chat() ^^^^^^^^^^^^ File "C:\Users\tumol\AppData\Local\Programs\Python\Python311\Lib\site-packages\loopgpt\utils\spinner.py", line 137, in inner return func(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\tumol\AppData\Local\Programs\Python\Python311\Lib\site-packages\loopgpt\agent.py", line 173, in chat resp = self.model.chat( ^^^^^^^^^^^^^^^^ File "C:\Users\tumol\AppData\Local\Programs\Python\Python311\Lib\site-packages\loopgpt\models\openai.py", line 32, in chat api_key = _getkey(self.apikey) ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\tumol\AppData\Local\Programs\Python\Python311\Lib\site-packages\loopgpt\models\openai.py", line 12, in _getkey raise ValueError( ValueError: OpenAI API Key not found. Please set the OPENAI_API_KEY environment variable. See https://github.com/farizrahman4u/loopgpt#-requirements for more details`

devsktlabs commented 1 year ago

is there supposed to be a specific path in my environment variables on windows that i'm missing?

tylerlindell commented 1 year ago

naw, python and the .env should be able to handle that for you

devsktlabs commented 1 year ago

its so strange that autogpt find .env in that directory but cannot with loop

FayazRahman commented 1 year ago

@devsktlabs From your directory, can you open up python and run the following commands:

from dotenv import load_dotenv
import os
load_dotenv()
os.getenv("OPENAI_API_KEY")

Does that give you your api key?

devsktlabs commented 1 year ago

yes that passes the key

FayazRahman commented 1 year ago

@devsktlabs That makes it even worse because this is the same code we use in the repo 😨 Let me do all the steps just like you did and get back to you. In the meantime, you can set your environment variable OPENAI_API_KEY to your key and that will definitely work. See how to set environment variables on windows here: https://www.architectryan.com/2018/08/31/how-to-change-environment-variables-on-windows-10/

tylerlindell commented 1 year ago

yes that passes the key

looks like you're using vscode! you could try a breakpoint in the code you have there and inspect for more details.

also, I'm not as familiar with powershell - do you have git bash as a terminal option for vscode?

FayazRahman commented 1 year ago

@devsktlabs I tried the exact same steps and it worked:

git clone https://github.com/farizrahman4u/loopgpt.git looptest
cd looptest
pip install -e .

rename .env.template -> .env replace api-key

loopgpt run
devsktlabs commented 1 year ago

ok I removed the entire directory again including .git. started over and went the process @FayazRahman suggested and it is now working. thank you for walking me through this issue. Agents releasing!

FayazRahman commented 1 year ago

@devsktlabs ♾️🕵️‍♂️

tylerlindell commented 1 year ago

seems like we might be able to close this now

swapneils commented 1 year ago

This seems to still be an issue if downloaded via pip? Using git and pip install -e work fine, but pip install loopgpt and putting .env in the directory with my runagent.py can't find the openai key, even though the os.getenv works fine.

I think we might want users to optionally provide the agent with an environment (and propagate that to the tools, of course), so that the pip package can work without having to set environment variables.