Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature] Empower Open Source Community Operation with LLMs #840

Open
wangyantong2000 opened this issue Jul 21, 2024 · 10 comments
Open

[Feature] Empower Open Source Community Operation with LLMs #840

wangyantong2000 opened this issue Jul 21, 2024 · 10 comments
Labels
kind/feature Category issues or prs related to feature request.

Comments

@wangyantong2000
Copy link
Collaborator

wangyantong2000 commented Jul 21, 2024

Description

In the community building and sustainable development of CRX, X-lab2017/open-wonderland#422, it is mentioned to utilize the capabilities of LLMs to empower open source community operations.
Therefore, this issue is set up to discuss possible functions and solutions.
Welcome everyone to propose relevant ideas!

@wangyantong2000 wangyantong2000 added the kind/feature Category issues or prs related to feature request. label Jul 21, 2024
@HalloMelon
Copy link
Collaborator

I think we can add a translation function. When students encounter problems while doing OSS101 homework, some may give up commenting because they need to communicate in English on the issue. For me too, sometimes I don't know how to express in English, so I need to translate it into English on other software and paste it back.

@wxharry
Copy link
Collaborator

wxharry commented Jul 27, 2024

IMO, it is important to think about how we are gonna integrated LLM with our stuff. What I can think of is to provide context to LLM. Take the translation feature as an example. We can use other tools to do translation, but where LLM can truely be helpful is to translate based on the context, knowing what programming languages are used in the project and giving better results. This is not just for translation, but also for features like introduction, Q&A, etc.

@wangyantong2000
Copy link
Collaborator Author

wangyantong2000 commented Jul 27, 2024

I think we can add a translation function. When students encounter problems while doing OSS101 homework, some may give up commenting because they need to communicate in English on the issue. For me too, sometimes I don't know how to express in English, so I need to translate it into English on other software and paste it back.

We can analyze and consider from multiple similar plugins what features we need. Functions related to LLM.
And these are examples of the translation plugin I am currently using.
image

iShot_2024-07-27_13.20.31.mp4

@wangyantong2000
Copy link
Collaborator Author

I think we can add a translation function. When students encounter problems while doing OSS101 homework, some may give up commenting because they need to communicate in English on the issue. For me too, sometimes I don't know how to express in English, so I need to translate it into English on other software and paste it back.

In fact, this is a basic question and answer function, which involves inputting a paragraph and using LLM for translation in OSSGPT. Or do you have any other better presentation options for the feature you mentioned? A more refined idea.

@HalloMelon
Copy link
Collaborator

Yes, this function should be included in the basic functions of OSSGPT. I have tried other translation plug-ins, such as deepl, and they have indeed achieved very good results.

@Tenth-crew
Copy link
Collaborator

I have an idea. Can oss-gpt answer questions based on the information in the issue? Sometimes when I use other people's open source code, I encounter various errors, but some of them are discussed in the issue. If I can directly give my problem to oss-gpt, it can find solutions and links to the original issue from the issue. I think it is very good. This should be very helpful for large open source projects.

@wangyantong2000
Copy link
Collaborator Author

I have an idea. Can oss-gpt answer questions based on the information in the issue? Sometimes when I use other people's open source code, I encounter various errors, but some of them are discussed in the issue. If I can directly give my problem to oss-gpt, it can find solutions and links to the original issue from the issue. I think it is very good. This should be very helpful for large open source projects.

Essentially, it is the process of information retrieval within a knowledge base. That is to say, when establishing the knowledge base, include the issue as well.

@wangyantong2000
Copy link
Collaborator Author

wangyantong2000 commented Aug 27, 2024

The component we use when developing OSS-GPT is React Chat Widget. Provide concise and intuitive chat functionality in React Chat Widget.
At present, when I am trying to develop some new features, I have found that some common basic functions of large models include streaming output, support for markdown format, etc. Requires a significant amount of secondary development.
And currently, with the emergence of chatGPT, there have also been some chat components that mimic GPT. For example, pro-chat and so on.
So, replace the components of OSS GPT to better adapt to the development of large models, allowing energy to focus more on the final effect of functionality.

@wangyantong2000
Copy link
Collaborator Author

wangyantong2000 commented Sep 22, 2024

Recently, I’ve tried various solutions to integrate large models into projects. Unlike other projects, this browser plugin project encountered a lot of difficulties and issues. After several attempts and practical trials, I created a small demo and finalized a plan for the project’s further advancement.

iShot_2024-09-22_19.19.39.mp4
iShot_2024-09-22_19.20.57.mp4

Next, the ProChat component will be introduced later. Although some parts of ProChat need to be modified due to the limitations of the browser plugin project, it’s still quite convenient overall. Some LLM applications are also using this component. Introducing this component involves upgrading the React version to 18 or higher, which will require some code refactoring. We provide application services, but the model itself must be supplied by the user, including the model’s address, API key, and model name. There must be a place for users to input and parse this information.

A simple Q&A wouldn’t be very innovative. Since we’re developing a plugin centered around GitHub, we should focus on finding scenarios within the GitHub platform where LLMs can be applied to automate tasks. On GitHub, automation involves GitHub APP and Github Bot, which will be used for various automated tasks. Future features include automatic code annotations, repository-level Q&A, issue automation (automatic creation, summarization, etc.), and PR code review. While these are just initial ideas, they give us a direction to move towards.

The priority is to first establish the infrastructure, and then gradually advance.

Next, the project will proceed with the following steps:

  1. Upgrade the React version to 18+. [Refactor] Upgrade the React version to 18+ #873
  2. Integrate the ProChat component with necessary secondary development.[Refactor] refactor OSS-GPT  #876
  3. Develop the model-related information storage and usage.[Refactor] refactor OSS-GPT  #876
  4. Refine the features already prepared, such as basic Q&A and automatic code annotation.[Refactor] refactor OSS-GPT  #876 [Feature] Using LLMs to complete automatic code annotation #879
  5. Improve the chat section’s design and style.

The above tasks are expected to be completed around October. Stay tuned…

We’re also welcoming first-year graduate students who are interested in participating. In the future, @Xsy41 will be joining the project.

@wangyantong2000
Copy link
Collaborator Author

wangyantong2000 commented Sep 30, 2024

How to make LLM combine with the previous hypercrx functional positioning to do something. Currently, we have created a lot of visual dashboards for the data provided by OpenDigger. We have done various visualization tasks, but we have been lacking the next step in data visualization, which is data analysis. We already have this visual data trend display for everyone, so we can use big models to analyze this data trend. And similar to how we want to view data for a specific month in a data dashboard, except for clicking on that month in the dashboard to see the corresponding data, can we input questions or other forms and use LLM to process the data and directly return it. I think this is also a place to consider.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Category issues or prs related to feature request.
Projects
None yet
Development

No branches or pull requests

4 participants