Git Product home page Git Product logo

chatgptapifree's Introduction

👩🏻‍💻 Meet Ayaka: A Passionate Researcher & Open-Source Contributor

Hi there! I am Ayaka, a 24-year-old computer science, historical linguistics, and mathematics researcher.

I have made significant contributions to the open-source community. I have created numerous open-source projects on GitHub and have hosted several websites and web services at my own expense. My open-source contributions span various fields, including deep learning, natural language processing, language conservation, historical linguistics, and computational linguistics.

📚 Proficiency in Deep Learning

My expertise in deep learning is reflected in my familiarity with JAX and Google Cloud TPU. I actively submit bug reports, participate in feature discussions and answer questions in the JAX and Google Cloud TPU community. In addition, I created TPU Starter, a comprehensive guide that has helped many people to get started with JAX and Google Cloud TPU. The guide has been translated into Korean and Chinese. Moreover, to enhance the user experience of JAX, I developed jax-smi, a tool that enables the monitoring of real-time memory usage of JAX programs, providing a similar experience to that of nvidia-smi. My significant contributions led to the honour of receiving the 2023 Google Open Source Peer Bonus Award.

💬 Natural Language Processing Expertise

In natural language processing, I have contributed to the Hugging Face Transformers library and released several NLP models. Besides, I have reimplemented the BART and Llama 2 models, and also collaborated on the reimplementation of the Mistral model, all from scratch using pure JAX. These projects provide high-quality open-source codebases to deep learning researchers and engineers and demonstrate how Transformer models can be implemented using JAX and trained on Google Cloud TPUs. Moreover, I implemented the BERT model from scratch using NumPy, performed in-browser inference using Pyodide, and thereby created TrAVis, a BERT attention visualiser that runs entirely within a browser. The visualiser offers an intuitive visualisation of BERT's attention mechanism for researchers.

I constantly keep up with the most advanced AI technologies. I am an early adopter of the most advanced large language model today—ChatGPT and have been studying it since its release. I am the co-author of the open-source Better ChatGPT website. Utilising the ChatGPT API, this website offers many advanced features and greatly enhances the ChatGPT user experience. It has garnered over 6,000 stars on GitHub and is being used by millions of users worldwide.

🌏 Language Conservation Efforts

My expertise in NLP also extends to language conservation. I trained the BART model for Cantonese, a low-resource language, and released it on the Hugging Face Hub. Building upon this, I proposed TransCan, an English-to-Cantonese machine translation model, greatly outperforming the state-of-the-art commercial machine translation system by 11.8 BLEU. The model has been released on GitHub, bringing benefits to both Cantonese and the wider low-resource NLP community.

In addition to language models, I have created several datasets. In the LIHKG Scraper project, I circumvented many layers of Cloudflare's restrictions to scrape LIHKG, one of the most popular Cantonese forums in Hong Kong, resulting in a corpus of 172,937,863 unique sentences. I have also created two English-Cantonese parallel corpora, Words.hk and ABC Cantonese.

Moreover, for the conservation of Hainanese and Hakka, I engineered web-scraping programs to regularly fetch the latest TV news of Wenchang and Xingning, which are broadcast in their local dialects.

🕰️ Pioneering Contributions in Historical Linguistics

I have also made considerable contributions to the field of historical linguistics. I founded the open-source organisation, nk2028, attracting a community of experts in historical linguistics. In nk2028, we have conducted pioneering research in the field of Middle Chinese phonology. We innovatively formalised the phonological positions of the Tshet-uinh phonological system as 6-tuples, which allowed us to accurately analyse the sound changes that have happened throughout the history of the Chinese language.

Moreover, in the process of putting this system into practice, we explored different methods of representing the laws of sound changes in computer programs. Initially, we designed a domain-specific language in PureScript and utilised SQLite as the database. In subsequent research, we simplified our approach by designing a novel JavaScript library, which greatly enhanced productivity.

Based on this, we released the Qieyun Autoderiver website, allowing community members to contribute laws of sound changes for various languages. This website has effectively invigorated the community and attracted many people to this field. To help beginners master the Tshet-uinh phonological system, we also published many tools, such as a tool to automate the process of puonq-tshet, a tool to generate Tshet-uinh Flashcards, and a tool to look up Tshet-uinh phonological positions.

💻 Innovations in Computational Linguistics

In nk2028, I have also made contributions to other aspects of linguistics. In the field of dialectology, we took over the discontinued MCPDict project and released the Chinese Dialect Pronunciation Atlas. Regarding classical Chinese, with the consent of the data provider, Sou-Yun website, we published ORCHESTRA, a comprehensive dataset of classical Chinese poetry. For phonetics, we created an IPA Online Practice System and a Putonghua IPA Converter.

Besides, I maintained the simplified-traditional Chinese conversion project OpenCC and its successor StarCC. These projects can accurately handle the problem of one-to-many mappings in simplified-traditional Chinese conversion. On top of this, leveraging my in-depth understanding of OpenType font features, I proposed a novel approach for simplified-to-traditional conversion fonts to handle the one-to-many mappings. Based on this approach, I produced two simplified-to-traditional conversion fonts, Fan Wun Ming and Fan Wun Hak. The approach I proposed has also been adopted by other font developers, enhancing the vibrancy of the typographic community.

For Cantonese, I published cantoseg, an effective Cantonese segmentation tool. I have also created two tools, namely ToJyutping and Inject Jyutping, which aid Cantonese learners in mastering the pronunciation of Chinese characters.

I am an active contributor to the rime input method community. As a member of the CanCLID organisation, I maintain rime-cantonese, a rime input schema for Cantonese. I've also released input schemata for TUPA, Loengfan, Mandarin, and Nüshu. Utilising my C++ and Python knowledge, I developed librime-python, a rime Python plugin that allows users to control the behaviour of the rime program through simple Python scripts. Moreover, I have curated awesome-rime, a comprehensive list of rime schemata and configs, gathering the efforts of the rime community.

🎲 Miscellaneous Endeavours and Contributions

My open-source contributions extend to my other areas of interest as well. With a deep understanding of the x64 instruction set and the Windows PE file format, I crafted the smallest 64-Bit PE file on Windows 10 using the assembly language. The file is a Windows executable of merely 268 bytes that can run normally and pop up a message box. Moreover, I proposed the Nya Calendar, a lunisolar-mercurial calendar that considers the synodic period of the Earth and Mercury and encompasses several unique properties.

In addition, I have contributed to the Arch Linux community by maintaining several AUR packages. I host several open-source websites and web services at my own expense, including the Online Nushu Dictionary website, a Graphviz server, a Telegram translation bot, and an instance of the Shieldy bot.

If you want to know more about me and explore my other passions and interests, feel free to visit my personal website!

chatgptapifree's People

Contributors

ayaka14732 avatar llegomark avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

chatgptapifree's Issues

How do I use this agent in vscode chatgpt?

I use vscode plugin: https://github.com/gencay/vscode-chatgpt

I configured the following proxy in settings.json:

{
    "chatgpt.gpt3.apiBaseUrl": "https://chatgpt-api.shn.hk"
}

But report an error:

Your method: 'GPT3 OpenAI API Key' and your model: 'gpt-3.5-turbo' may be incompatible or you may have exhausted your ChatGPT subscription allowance. (HTTP 404 Not Found) ChatGPT error 404: Not found

提个建议:api域名url可不可以做到和官网一致?

比如 https://api.openai.com/v1/chat/completionshttps://chatgpt-api.shn.hk/v1/chat/completions 对齐。因为有很多其他开发者开发的应用中很多都提供了自定义域名功能,比如我填 https://xxx.com 它们软件底层就会自动处理成 https://xxx.com/v1/chat/completions ,但是用本项目提供的域名的话,填 https://chatgpt-api.shn.hk 它们会处理成 https://chatgpt-api.shn.hk/v1/chat/completions ,那么就无法使用到本项目的功能了。

以及, https://chatgpt-api.shn.hk 也可能随时被墙

OpenAI API responded: { "error": { "message": "Your access was terminated due to violation of our policies, please check your email for more information. If you believe this is in error and would like to appeal, please contact [email protected].", "type": "access_terminated", "param": null, "code": null } }

Please fix this
OpenAI API responded: { "error": { "message": "Your access was terminated due to violation of our policies, please check your email for more information. If you believe this is in error and would like to appeal, please contact [email protected].", "type": "access_terminated", "param": null, "code": null } }

Hi! Boss!

As I am a personal developer, Open AI recharge is not supported in my area, and my personal free API account has been banned recently, so this project is of great help to me! I hope it can survive for a long time. As a student, I don't have a lot of money, but I have contributed some small money to you, hoping to help this project. If you can't stick to this free project, I hope I can pay for it. Please let me know before you finish this project. Thank you. Sincerely Ming-XF.

Unable to connect to Free ChatGPT

Description: I am unable to access the Free ChatGPT website at https://freechatgpt.chat/. The page is taking too long to load and seems unresponsive. I have tried accessing it multiple times, but the issue persists. I suspect it's not a network issue on my end.

Steps to reproduce:

  1. Visit https://freechatgpt.chat/

  2. Try to connect with valid credentials

  3. Observe the slow loading and unresponsiveness of the page

I have tried accessing the website from different devices and networks, but the issue remains the same. Kindly assist in resolving this issue.

Thank you.

Error on deploy using Back4App

2023-03-16T15:19:39.291Z # trying to hit the 8080 port using http

2023-03-16T15:19:42.376Z # it looks that no process is listening to the 8080 port using http

2023-03-16T15:19:42.377Z # app did not turn healthy after several checks

2023-03-16T15:19:42.378Z # deployment failed

Does anyone know how I can fix it?

Do I have to pay?

I wondered, if you want to host your own api, do you have to pay for the tokens?

hope it can be the power grid

Al application developers do not need to develop a power grid first in order for users to use electronic appliances.

bug: KV PUT failed

Hello, Ms. Ayaka!

I received an error message that says "KV PUT failed: 400 Invalid expiration of 1678125600. Expiration times must be at least 60 seconds in the future," while using your unmodified code. Based on the error message, it seems that the expiration time used in the kv.put function is not valid because the expiration parameter provided is less than 60 seconds ahead of the current time.

To resolve the error, we can update the expiration time by adding 60 seconds to the current time using the moment library's add() method before converting it to a Unix timestamp using the unix() method. We can achieve this by using the following code:

const rateLimitExpiration = utcNow.startOf('hour').add(1, 'hour').add(60, 'seconds').unix();

By doing this, the expiration parameter passed to the kv.put function will always be at least 60 seconds in the future, and the error should no longer occur.

Please let me know your thoughts on this solution.

wrangler.toml

Hi Ma'am Ayaka!

Thank you for this. Hoping you can help me how to set up the wrangler.toml properly since I have multiple Cloudflare accounts connected to my main CF account.

Let's say I wanted to use the AAA account.

Thank you :)

✘ [ERROR] More than one account available but unable to select one in non-interactive mode.

If you think this is a bug then please create an issue at https://github.com/cloudflare/workers-sdk/issues/new/choose
Please set the appropriate account_id in your wrangler.toml file.
Available accounts are (<name>: <account_id>):
AAA: ece12a4fbc7b131fc17d118
BBB: c1b0fa2f2e392fd5dbbca5e3e
CCC: 04ecf3126ab6a336d11c[25](https://github.com/xxxxx/actions/runs/43xxjobs/756xx756#step:5:26)7d4c746116
DDD: f618f8ef0557ef4d9c898c6c[26](https://github.com/xxxxx/actions/runs/43xx0380/jobs/7xx56#step:5:27)7821a
EEE: 5f1d81df6a7ba9461f756a8faeb34[29](https://github.com/xxxxx/actions/runs/4xxx0/jobs/75xx56#step:5:30)

feature: MongoDB Error Handling

Hi Ayaka!

I am writing to suggest improving the reliability of the ChatGPTAPIFree by implementing proper error handling for MongoDB connections.

Currently, the code assumes that the connection to MongoDB will always succeed, but there are several reasons why the connection could fail, such as network issues or invalid credentials. As a result, the lack of proper error handling may lead to critical issues, such as data loss or incorrect data processing.

I recommend adding error handling for MongoDB connection failures to address this issue. By doing so, you can improve the reliability of the API and reduce the risk of data loss or incorrect data processing.

Thank you for considering my suggestion.

Sample code:

Screenshot (170)

  • The MongoClient is created outside the app variable and connected to MongoDB using the connect() method. If an error occurs, the code logs the error and exits the process with an exit code of 1 to indicate a fatal error.
  • The MongoDB collection is created, and the indexes are created as before.
  • The catch block of the /v1/ route now logs the error to the console before sending a generic error message back to the client.
  • This implementation should now handle errors related to MongoDB connections.
const client = new MongoClient(uri);
client.connect((err) => {
  if (err) {
    console.error(err);
    process.exit(1);
  } else {
    console.log('Connected successfully to MongoDB at ' + uri);
  }
});
    resUpstream.body.pipe(res);
  } catch (error) {
    console.error(error);
    res.status(500).set(corsHeaders).type('text/plain').send('Internal server error');
  }
});

Quota Exceeded

Getting this when making a request:

HTTP 429

OpenAI API responded with:

{
    "error": {
        "message": "You exceeded your current quota, please check your plan and billing details.",
        "type": "insufficient_quota",
        "param": null,
        "code": null
    }
}

Error 429 : Too many requests

Hello, I send a request with python, but I got this error.

requests.exceptions.JSONDecodeError: [Errno Expecting value] <!doctype html><title>429</title>429 Too Many Requests: 0

Bests Regards

CORS Error

Hello Ms. Ayaka,

I successfully setup my own instance unfortunately I am having a problem with CORS policy, here are the error messages I am getting from Google Run and web console:

{
httpRequest: {11}
insertId: "640c4eXXXXXXXXXbef81ca15"
labels: {5}
logName: "projects/XXXXX/logs/run.googleapis.com%2Frequests"
receiveTimestamp: "2023-03-11T09:50:XXXXZ"
resource: {2}
severity: "ERROR"
spanId: "4361714022011534635"
textPayload: "The request failed because either the HTTP response was malformed or connection to the instance had an error. Additional troubleshooting documentation can be found at: https://cloud.google.com/run/docs/troubleshooting#malformed-response-or-connection-error"
timestamp: "2023-03-11T09:50:3XXXZ"
trace: "pXXXX14faaa"
}

Access to fetch at 'https://XXXXX.a.run.app/v1/' from origin 'https://aXXXXX.com' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.

Response Headers

access-control-allow-headers: Content-Type, Authorization
access-control-allow-methods: GET, HEAD, POST, OPTIONS
access-control-allow-origin: *
alt-svc: h3=":443"; ma=xx29=":443"; ma=2592000,h3-Q0xxx:443"; ma=259xx0,quic=":443"; ma=2592000; v="46,43"
content-length: 9
content-type: text/plain; charset=utf-8
date: Sat, 11 Mar 2023 09:59:10 GMT
server: Google Frontend
x-cloud-trace-context: ef8663xxx533eed

Thank you.

access_terminated

Your access was terminated due to violation of our policies, please check your email for more information. If you believe this is in error and would like to appeal, please contact [email protected].

The above error occurs when I use。

How to Support?

Just saw this amazing initiative. I really wanted to try out ChatGPT, but I didn't have a Phone Number. Now I can experiment with it. Thanks very much.

I do want to support this project, but I can't financially, sorry. But I am a student learning developing/programming, and probably can help with anything you want.

Just tell me 😉

Not Found error.

I created a docker image and ran it using:

docker build -t chatgpt:1.0 .
docker run -d -p 8080:8080 chatgpt:1.0
I exposed port 8080 of the container, so I could use it on my localhost browser.

The server is listening on 8080 but when I tried to run it, I get a 'not found' error.

index.js references some /v1/chat/completions folder but I don't see it in the local directory.

I renamed ".env.example" to ".env" and entered two OpenAI API keys there. Prior to renaming it, I was getting some other error related to the JSON parse error.

One error is leading to fixing another thing and now I am stuck on this 'Not found' page.

Any light on this matter would be greatly appreciated. Thanks.

PS: I am running Docker Desktop latest version, x86 machine, Windows 10.

Google Cloud Armor Rules

Hi Ayaka,

I want to self-host my own API endpoint, please kindly share what Google Cloud Armor rules did you use?

Thank you.

Are you okay?

Because you are literally paying for others without any rewards. I am thankful about it, but just concerning: are you okay?

How it possible test any integration without limitation?

Free with limited quota? I think so this is not free, just trial.

OpenAI API responded:

{
    "error": {
        "message": "You exceeded your current quota, please check your plan and billing details.",
        "type": "insufficient_quota",
        "param": null,
        "code": null
    }
}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.