#ChatGPT Endpoint
1 messages · Page 1 of 1 (latest)
you now need to set its reverse proxy yourself, using PandoraNext
see: https://docs.librechat.ai/install/dotenv.html#chatgpt
and: #1177595493610684536 message
I was able to make it work on our huggingface demo a couple of hours ago, I'll try to document the method soon
@stiff scroll here's the dockerfile I used, you need to provide your own config.json and token.json as env secrets (the whole content of the files) if you want to set it up yourself
https://huggingface.co/spaces/LibreChat/PandoraNext/blob/main/Dockerfile
the reverse proxy url for librechat should look like this:
CHATGPT_REVERSE_PROXY=http://pandoranext.example.com/proxy_api_prefix/backend-api/conversation
pandoranext.example.com being the server where you deployed it
proxy_api_prefix is the custom "proxy_api_prefix" you've set in the config.json
- in the config.json, you need to set your
"license_id"(get it here: https://dash.pandoranext.com/) and your"proxy_api_prefix"(it needs to be someting relatively random and long enough or you'll get an error. Don't use special characters that can't be used in a URL)- no need to change anything else
config.json:
- no need to change anything else
{
"bind": "0.0.0.0:8181",
"tls": {
"enabled": false,
"cert_file": "",
"key_file": ""
},
"timeout": 600,
"proxy_url": "",
"license_id": "",
"public_share": false,
"site_password": "",
"setup_password": "",
"server_tokens": true,
"proxy_api_prefix": "",
"isolated_conv_title": "*",
"captcha": {
"provider": "",
"site_key": "",
"site_secret": "",
"site_login": false,
"setup_login": false,
"oai_username": false,
"oai_password": false
},
"whitelist": null
}
The default token.json works for our use case
token.json:
{
"test-1": {
"token": "access token / session token / refresh token",
"shared": true,
"show_user_info": false
},
"test-2": {
"token": "access token / session token / refresh token",
"shared": true,
"show_user_info": true,
"plus": true
},
"test2": {
"token": "access token / session token / refresh token / share token",
"password": "12345"
}
}
same minimum config to use locally in docker:
- git clone or download latest release: https://github.com/pandora-next/deploy
- set the config.json according to the instruction above
- in the librechat .env file use
CHATGPT_REVERSE_PROXY=http://host.docker.internal:8181/prefix-in-config/backend-api/conversation- ❗replace
prefix-in-configwith what you've set in the .env file
- ❗replace
- go back to the pandoranext folder and run the command
docker-compose up -d
On it🚬
could you give example of "proxy_api_prefix" ?
I used something like: librechat-853249653879-53023
awesome
could you mention all the needed values on this file? @true lintel
is it just "license_id" and "proxy_api_prefix"?
so where i add the ChatGPT auth session? @true lintel
yes the basic config only need "license_id" and "proxy_api_prefix"
ChatGPT auth session from https://chat.openai.com/api/auth/session ? Same as usual! (WebUI or .env)
oh i got it great
i have a lot of things to try with that
are you installing it on render?
yes eventually
i will create a repo first and run it locally
that's also what I did, confirm it's working before making effort to deploy it!
indeed ✅
i think you could easily adapt the method I used on huggingface for render
configuring it will be useless at this case, each new deploy ends all that
i always look for the most stable case i can get to though instead of coming back doing the same thing, i improve it more and more
@true lintel any clue?
endpointOption: { model: 'gpt-4', key: null },
can you give me more context? What were you trying to do and where is this coming from? 🤔
logs
is the free model working?
yes, so weird
the dropdown it self disappears if i used gpt-4
@true lintel
is it possible it disappears because we can't switch models mid conversation with this endpoint?
so it's the plus subcription that needs to be enabled...
the repo is all in chinese and I need to use translation tools to try to understand so it's not easy 😅
there's the "plus" argument in token.json
maybe try to play with this...
there's also this part of their readme that seems to mention 3.5 and 4, with another endpoint
of course, but didn't it work with you?
I don't have a plus subscription, I only tested the free model
i'll send you my session on DM
ok, I'll be afk 15min but will look when back
ok
i think that librechat has this issue for long time and you need to recreate the chatgpt browser endpoint, also i'm trying to fix it. @true lintel
note that the messages are going successfully to my main account but always showing regenerate button @true lintel
also this part remaining in the code getConvo, /* chore: this method is not properly error handled */ getConvoTitle: async (user, conversationId) => { try { const convo = await getConvo(user, conversationId); /* ChatGPT Browser was triggering error here due to convo being saved later */ if (convo && !convo.title) { return null; } else { // TypeError: Cannot read properties of null (reading 'title') return convo?.title || 'New Chat'; } } catch (error) { console.log(error); return { message: 'Error getting conversation title' }; } },
if that works it has to be fixed
@true lintel i think maybe you know how to fix it?
is there any changes need to be happen on that snippet? @true lintel
it looks about right, not sure tho, danny is the one who implemented most endpoints, I don't contribute that much to the code tbh
@stiff scroll their authentication server keeps timing out on me 😑
lookup dash.pandoranext.com: i/o timeout
they blocked my ip 🤦♂️
oh why that happend
I think pandoranext locked my license to the huggingface server IP, and on huggingface I thing OpenAI started blocking the requests to chatgpt 😅 because of that I can't test from anywhere It was a pandoranext issue with my license after all
no it works fine on panadoranext (GPT 4) so the problem inside the chatgptbrowser on Liber, i think we need danny @true lintel @hidden rock
I’m still currently blocked from any testing
also i have a clue, if we delayed the the await until the title come up maybe it fixes it sendMessage(res, { title: await getConvoTitle(user, conversationId), final: true, conversation: await getConvo(user, conversationId), requestMessage: userMessage, responseMessage: responseMessage, });
i don't know how that happend to you, so weird
I can’t troubleshoot anymore anyway, there’s a small snow storm here and the electricity keeps going out. I had to turn off my pc
okay, have a nice day
Did you find out what the “plus”: true does in the token.json file?
Before when the public proxy worked, I could switch models on this endpoint just fine
Is the problem getting the title?
The drop-down disappears because ChatGPT doesn’t allow model switching mid conversation
Doing so will get your session banned
I've gotten banned before doing this
my electricity came back I pandoranext started to work again for me
looks like it
hmmmm i can't seem to configure this properly. First i got that pandora-next issue
now it's saying my token is not valid?
Do i really need a chatgpt reverse proxy?
Only you can answer, it allows you to access the free chatgpt model from https://chat.openai.com/ in librechat...
essentially what i've done is take deploy-compose.yml, comment out the client section and then add my chatgpt api key to my env and spin it up
i've got plus and api tokens, so... where does that leave me?
Oh hi danny, i'm the guy complaining about the portainer stuff in github 😄
@raw escarp you need the reverse proxy service from pandora-next. it's one of the few, free options you have to access chat.openai.com. OpenAI is playing a cat-and-mouse game with this
welcome to the discord! I appreciate you taking a closer look at the docker setup
np
@true lintel maybe we can include a guide on setting up this endpoint? and disable it by default in the same PR? if you dont want to do this don't feel obligated
I already disabled it by default in the new .env.example
And I'll work on a guide soon, that's the reason I've taken notes on how to set it up here
nice!
it makes sure that you have it on your session or not
Changing it to false will makes you on free mode even if you not
I guess tbh
didn't test making it false yet but i'll get there
@true lintel also when everything is encrypted that means you blind tbh 😅
you think that using wide-proxy in the env may fix it? so what kind of proxies we need?
last thing useful I got is the system/user/assistant requests on the backend-api (model=gpt-4) and those there is, if it helps you guys. @hidden rock @true lintel
SYSTEM -> ALL
"id": "4d1fdf47-097e-4b58-a5d5-7341ebeb37e2",
"author": {
"role": "system",
"name": null,
"metadata": {}
},
"create_time": null,
"update_time": null,
"content": {
"content_type": "text",
"parts": [
""
]
},
"status": "finished_successfully",
"end_turn": true,
"weight": 0,
"metadata": {},
"recipient": "all"
}```
USER ->
```{
"id": "aaa272b7-659d-407d-b803-97e4e4e0b8bc",
"author": {
"role": "user"
},
"content": {
"content_type": "text",
"parts": [
"hi"
]
},
"metadata": {}
}```
ASSISTANT -> ALL
```{
"id": "0cb34e02-9c59-4237-9f17-b6fa5df77802",
"author": {
"role": "assistant",
"name": null,
"metadata": {}
},
"create_time": 1701709181.832159,
"update_time": null,
"content": {
"content_type": "text",
"parts": [
"Hello! How can I assist you today?"
]
},
"status": "finished_successfully",
"end_turn": true,
"weight": 1,
"metadata": {
"finish_details": {
"type": "stop",
"stop_tokens": [
100260
]
},
"is_complete": true,
"message_type": "next",
"model_slug": "gpt-4",
"parent_id": "aaa272b7-659d-407d-b803-97e4e4e0b8bc",
"timestamp_": "absolute"
},
"recipient": "all"
}```
@hidden rock @true lintel as you can see there is model_slug that's value is gpt-4 as the model name and another a lot of material to create new great LibreChat endpoint for chatgptbrowser (plus + free).
although a total free use case in LibreChat gonna be awesome
im familiar with their data structures, we don't need all this data, also I'm still not sure what the issue is exactly
the issue that when you fetch the data at the first time didn't get any 'title' because there is no one, it always delayed in the real website and pandora.
that is the problem.
there is no <title>ChatGPT</title> under <head> when you scraping the website instantly after you open it, so it's always null
so he get this.
me too
the title is generated from a post request to https://chat.openai.com/backend-api/conversation/gen_title/{your convo id}
does pandora-next have a backend-api/conversation/gen_title/ endpoint?
A good pont, idk so I'll keep digging 😅
also delaying this api request may fix it
aren't they using the same endpoint for title gen with davinci (which is working fine)?
you would have to look at the browser client here: https://github.com/danny-avila/nodejs-gpt
A client implementation for ChatGPT and Bing AI. Available as a Node.js module, REST API server, and CLI app. - GitHub - danny-avila/nodejs-gpt: A client implementation for ChatGPT and Bing AI. Av...
Oh! that is a great work
you actually did it long ago in CLI Mode 😅
@hidden rock so why we need pandoranext at all?
i got that now
nodejs-gpt is a fork of waylaidwanderer/node-chatgpt-api which doesn't seem to be maintained anymore.
so what they did in pandora we can't do?
i hope you figure out @hidden rock
this is way better if we did ours 😅
what they did is closed source and probably serving the exact same minified javascript from chat.openai.com with some script injection logic over it
what they are doing is against OpenAI terms of use as they are redistributing the same exact code
ok so sorry for asking stupid questions but do i or don't i need the proxy/relay if i have plus/paid api?
I recommend using the API key with the OpenAI endpoint: https://platform.openai.com/api-keys
Setting up the proxy to use with your plus subscription, while supported, is against OpenAI ToS.
Also with the proxy method you can currently only use the free davinci model. Other models like gpt-4 and plugins will produce an error.
tl;dr It is best to use a proper API key with the OpenAI endpoint
Ok sweet, thanks
That immediately tells me i'm stupid because i put my openai key into my chatgpt key field
i obviously don't know the difference 😄
It's an easy mistake!
cool, i got it working 😄
ok so for portainer deployment the deploy-compose kindof works
It's missing 1 thing which is UID/GID mapping and honestly a LOT of unnecessary volumes
volumes:
- /opt/LibreChat/app:/app/client/node_modules:rw
This is literally the only volume i have on the api container
because pretty much all of the others are subdirectories of /app. Granted you CAN add additional volumes to the directories if you want to split up where you store stuff but it's kinda over the top
thanks for looking into it!
About the google authentication. How does that work with a reverse proxy?
I'm getting redirected to localhost:3080 although i've set the google callback uri to my domain
do i need to change the HOST= perhaps?
or the DOMAIN_CLIENT/DOMAIN_SERVER
Ok yeah i'm a bit confused, i tried changing both and the HOST= values just to test
none of them work 😄
you set DOMAIN_CLIENT/DOMAIN_SERVER to your domain and HOST to localhost or 0.0.0.0
But... shouldn't it redirect to some google page? It's just going to https://my.domain/oauth/google and saying ""ERR_SSL_UNRECOGNIZED_NAME_ALERT"
for some reason it redirects to http maybe?
bwaaaaaaaaahhhhh it's all my fault, my reverse proxy is configured with http
uri mismatch now but that's also a configuration issue. Will sort that in a bit
PandoraNext - Translated README.md
✨ PandoraNext Assistant GPTs, if you have a Plus account, you can ask it for help with project issues (do not attempt to extract source code)
Brief Introduction
- Pandora Cloud + Pandora Server + Shared Chat + BackendAPI Proxy + Chat2API =
PandoraNext(Demo Site) - Supports GPTs, with the latest UI.
- Supports various login methods: (equivalent to Pandora Cloud)
- Account / Password
- Access Token
- Session Token
- Refresh Token
- Share Token
- Can integrate tokens (all the above types of tokens can be used), supports setting a password. (equivalent to Pandora Server)
- Configurable shared tokens, there will be a shared site similar to chat-shared3.zhile.io (currently 2622 regular accounts, 22 Plus).
- It operates in full proxy mode, your users only need to be able to connect to your deployment network.
- Can be started in BackendAPI Proxy mode, directly using the
Access Tokento call/backend-api/interface. - Still have questions? Then join the Telegram group and let everyone have a look: @ja_netfilter_group
Manual Deployment
- Download the package suitable for your operating system and architecture from Releases.
- Unzip and modify the
config.jsonfile in the same directory to the parameters you need. - Obtain license_id and fill it in the
config.json, this is a necessary prerequisite step! - Launch with
./PandoraNextfor various Linux/Unix systems. - Double-click
PandoraNext.exefor Windows, but of course, it is best to start in cmd.
Docker Compose Deployment
- The repository already contains relevant files and directories, pull them to local, obtain license_id and fill it in
data/config.json. datadirectory contains example files ofconfig.json,tokens.jsonthat you can modify.docker-compose up -dlaunches the service!
Docker Deployment
$ docker pull pengzhile/pandora-next
$ docker run -d --restart always --name PandoraNext --net=bridge \
-p 8181:8181 \
-v ./data:/data \
-v ./sessions:/root/.cache/PandoraNext \
pengzhile/pandora-next
- The container listens on port
8181by default, mapping the host's8181port and can be modified. - You can map a directory to
/datadirectory within the container, andconfig.json,tokens.jsonas well as obtain license_id are filled inconfig.json. - You can map a directory to
/root/.cache/PandoraNextdirectory within the container to retain loginsession, avoiding loss of login state on container restart.
Nginx Configuration
server {
listen 443 ssl http2;
server_name chat.zhile.io;
charset utf-8;
ssl_certificate certs/chat.zhile.io.crt;
ssl_certificate_key certs/chat.zhile.io.key;
...other configurations omitted...
location / {
proxy_http_version 1.1;
proxy_pass http://127.0.0.1:8181/;
proxy_set_header Connection "";
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_buffering off;
proxy_cache off;
send_timeout 600;
proxy_connect_timeout 600;
proxy_send_timeout 600;
proxy_read_timeout 600;
}
...other configurations omitted...
}
- It's recommended to enable
http2in Nginx. - The above is only a suggested configuration and can be altered based on the actual situation.
- It is advisable to enable
ssla.k.ahttps, otherwise browser restrictions will prevent copying of webpage content.
config Configuration
- Below is an example
config.jsonfile:
{
"bind": "127.0.0.1:8181",
"tls": {
"enabled": false,
"cert_file": "",
"key_file": ""
},
"timeout": 600,
"proxy_url": "",
"license_id": "",
"public_share": false,
"site_password": "",
"setup_password": "",
"server_tokens": true,
"proxy_api_prefix": "",
"isolated_conv_title": "*",
"captcha": {
"provider": "",
"site_key": "",
"site_secret": "",
"site_login": false,
"setup_login": false,
"oai_username": false,
"oai_password": false
},
"whitelist": null
}
bindspecifies binding IP and port. Inside docker, only0.0.0.0can be used as the IP, otherwise, it won't map outside.- If you do not intend to wrap with nginx or other reverse proxies, the IP in the
bindparameter should be set to0.0.0.0!!! tlsconfigures PandoraNext to start directly withhttps.enabled- Whether to enable,trueorfalse. When enabled, the certificate and key file paths must be configured.cert_file- Path to the certificate file.key_file- Path to the key file.
timeoutis the request timeout inseconds.proxy_urlspecifies to send service traffic through a proxy, e.g.,http://127.0.0.1:8888,socks5://127.0.0.1:7980license_idspecifies your License Id, which can be obtained here.public_shareFor conversations created in GPT, whether login is required to view them.truemeans login is not required for viewing.site_passwordsets the whole site password, you need to enter this password first, correct entry allows you to carry out subsequent steps. Fully ensures privacy.setup_passworddefines a setup password, used for calling/setup/starting setup interfaces, if empty then not callable.server_tokenssets whether to show the version number in the response header,trueto show,falsenot to show.proxy_api_prefixcan add a prefix to yourproxymode interface addresses, making them unexpected. Be mindful that the prefix should be characters allowed in URLs. Including:a-zA-Z0-9-_.~proxy_api_prefixyou must set a prefix of no less than8characters, and containing bothnumbersandlettersto enableproxymode!/backend-api/conversationproxy mode ratio1:4/v1/chat/completions3.5 model ratio1:4/v1/chat/completions4 model ratio <t:1701843000:t>, no need for coding/api/auth/loginlogin interface ratio1:100, no need for coding
isolated_conv_titleIt is now possible to set a title for isolated sessions, rather than the uniform*.captchaconfigures captchas on some critical pages.provider- captcha provider, supporting:recaptcha_v2,recaptcha_enterprise,hcaptcha,turnstile,friendly_captcha.site_key- Website parameter obtained from the captcha provider's backend, publicly disclosable information.site_secret- Secret parameter obtained from the captcha provider's backend, do not disclose. Some providers also call itAPI Key.site_login- whether to show captcha on the full site password login interface,trueorfalse.setup_login- whether to show captcha on the setup entry login interface,trueorfalse.oai_username- whether to show captcha on the username input interface,trueorfalse.oai_password- whether to show captcha on the password input interface,trueorfalse.
whitelist- array of emails specifies which users can login and use, username/password login is restricted, all token logins are restricted. Built-in tokens are not restricted.whitelistset tonullmeans no restrictions, an empty array[]means all accounts are restricted, built-in tokens are not restricted.- An example of
whitelist:"whitelist": ["[email protected]", "[email protected]"]
tokens Configuration
- Below is an example
tokens.jsonfile:
{
"test-1": {
"token": "access token / session token / refresh token",
"shared": true,
"show_user_info": false
},
"test-2": {
"token": "access token / session token / refresh token",
"shared": true,
"show_user_info": true,
"plus": true
},
"test2": {
"token": "access token / session token / refresh token / share token",
"password": "12345"
}
}
tokensupports all types written in the example file.session tokenandrefresh tokencan auto-refresh.- Each key is called a
token key, which can be entered in the login box as username. As above:test-1,test-2, etc., change at will. - If
passwordis set, then after entering thetoken key, you proceed to the password input page to enter the matching password. - If
sharedis set totrue, then this account will appear in/shared.html, and a link to it will appear on the login page. - If
sharedis set totrue, then this account can no longer log in through the username login box. - Accounts in
/shared.htmlhave the same functionality as the shared site, and you can set an isolation password for session isolation. plusis used to mark on/shared.htmlwhether the account has golden light, no other purpose.show_user_infoindicates whether to display account email information when shared on/shared.html, it is recommended to enable for GPTs.
proxy Mode Interfaces
- /backend-api/*
ChatGPTweb version interface, see more on the page with F12. - /public-api/*
ChatGPTweb version interface, see more on the page with F12. - GET /api/token/info/fk-xxx to get share token information, use the access token of the generator as the Authorization header, you can view the usage of different models.
- POST /api/auth/session to obtain access token via session token, use urlencode form to pass session_token parameter.
- POST /api/auth/refresh to obtain access token via refresh token, use urlencode form to pass refresh_token parameter.
- POST /api/auth/login to login and get access token, use urlencode form to pass username and password parameters.
- POST /api/token/register to generate share token
- POST /api/pool/update to generate an update pool token
- POST /v1/chat/completions to use
ChatGPTAPI mimic request interface, supporting share token and pool token. - All of the above addresses need to be prefixed with
/<proxy_api_prefix>, which is the prefix you set.
Setup Interface
- You must first set
setup_passwordinconfig.jsonto be non-empty! - Open in browser:
<Base URL>/setup, where<Base URL>is the address of your deployed service.
About license_id
- Obtain here: https://dash.pandoranext.com
- Copy the content after
License Id:, fill it in thelicense_idfield inconfig.json. - Make sure not to copy any unnecessary spaces or invisible characters.
- If
license_idis not filled inconfig.json, starting will cause an errorLicense ID is required. - In case of no fixed IP, it will automatically try to pull again when the IP changes.
- If you are launching
webandproxymodes at the same time, they must share alicense.jwt, in this case, it's recommended to pull manually!
Other Notes
- If you find that you cannot copy on the webpage, enable
httpsor use127.0.0.1. - If you are customizing page elements, please retain:
- The text and link of
Powered by PandoraNext. - The text and link of
About PandoraNext.
- The text and link of
- If you want to wipe it, remove several
dom detectioncodes in more than a hundred js files. - I won't say what the consequences of wiping will be.
PHPis the best programming language in the world.
I have a problem. An error started showing up today:
Something went wrong. Here's the specific error message we encountered: Error message: "Cannot set properties of null (setting 'title')"
This is only on GPT4 model.
3.5 works fine.
Panodra is set up fine, yesterday everything was working fine.
My env settings:
ENDPOINTS=chatGPTBrowser,gptPlugins
OPENAI_TITLE_MODEL=gpt-3.5-turbo
CHATGPT_MODELS=text-davinci-002-render-sha,gpt-4
CHATGPT_REVERSE_PROXY=http://host.docker.internal:8181/prefix/backend-api/conversation
Request failed with response: {"error":"Conversation not found"}
can you check the server logs to pinpoint the line of code where it's happening?
Here is log:
ask log {
userMessage: {
messageId: '43c53e0c-07a8-4979-809d-3c555c08d973',
sender: 'User',
text: 'Hello',
parentMessageId: '00000000-0000-0000-0000-000000000000',
conversationId: '6d5ac3ea-90f7-4a2e-a2a7-bb279c6743f1',
isCreatedByUser: true
},
endpointOption: { model: 'gpt-4', key: null },
conversationId: '6d5ac3ea-90f7-4a2e-a2a7-bb279c6743f1'
}
[Meilisearch] Convo not found and will index 6d5ac3ea-90f7-4a2e-a2a7-bb279c6743f1
My token sets on server envs
you were able to use gpt-4 with it yesterday? I never was able to make it work in my testing. Always got the titling error... 🤔
Because of this I've stated in our guide about it ( PandoraNext )that only text-davinci-002-render-sha will work. I'll update the documentation if there's a way to enable other models.
Yes. gpt4 worked yesterday.
And if i now open the official chatgpt ui - i see my conversation and button to regenerate.
@true lintel If you want, I can give you access to my LibreChat.
no error message?
Just this. Nothing else
I think I know the issue but will have to setup pandora to debug so give me a couple moments
If I can help in any way - I'm happy to help)
One more thing:
If i open Pandora web-interface and try from here - its working, with gpt4
@true lintel is this enough for it to work?
{
"test-1": {
"token": "my token",
"shared": false,
"show_user_info": false
},
"test-2": {
"token": "my token",
"shared": false,
"show_user_info": false,
"plus": true
},
"test2": {
"token": "access token / session token / refresh token / share token / username & password",
"password": "12345"
}
}
do they all need to be filled out? this part wasnt clear
nothing to change in the token.json, you can use it as is
so i provide session token any where or no?
no, I only needed the license id, and to set the proxy_api_prefix to make it work
interesting i thought you could provide your own session tokens
and I set my token as user_provided in the librechat .env and use librechat's WebUI to provide it as usual
you need change this, if you want to use Pandora UI. For LibreChat changes not needed
Good to know, I was only looking to make it work inside librechat, not for an alternative to librechat 😉
You can provide a chatgpt token for user test2, for example. But this only works in pandoraUI, but doesn't work for the reverse proxy we use for LibreChat
there might be a lot more going on here than i bargained for 🤔
Im seeing if there could be a quick fix still
data: '{"message": null, "conversation_id": "8127b888-d910-4abb-b120-117d2d0fe595", "error": "Our systems have detected unusual activity from your system. Please try again later."}',
its openAI answer?
I hope you don't get your account flagged for that 😅
@edgy dew yes it's from OpenAI. gpt-3 doesnt get moderated but gpt-4 does. I'm not sure I can fix this atm. it might be as simple as adding more headers to the request but authentication is definitely a lot tighter with plus models. everything pandora does is proxied which is really sus too.. they're able to generate your openAIId, and refresh token just from a session token, and authentication is processed externally
it's obvious they are pinging an external server which is why the license id and there are "shared" functionalities. Im trying to pick at the image they have encoded. which again is also suspicious, they wanna keep their methods secret
@edgy dew @true lintel careful using this as they could easily fetch/store all your conversations
your session can be renewed by logging out and back in on the official site
Thank you. It's basically expected. I don't write anything secret there)
@hidden rock @true lintel I see some updates in Pandora repo, and new release 8 hours ago. Maybe it help.
New:
/api/arkose/token - get arkose_token,proportion1:10
POST /api/arkose/token gets arkose_token, currently only supports gpt-4type. Use the urlencode form to pass the type=gpt-4 parameter. After obtaining, it can be called via APIGPTs
Now i try to update Pandora on my install
I build own image with latest Pandora binary, and all same, unfortunately.
in pandora UI all working good.
in LibreChat - same error.
Hi.
Last release(v0.5.3) of PandoraNext fix all issues.
Now GPT4 working with LibreChat