Skip to content

Commit 9d2e8ff

Browse files
shanghoosh1majolr
authored andcommitted
New HeatWave GenAI app: AskME
Signed-off-by: aalmoham <[email protected]> Signed-off-by: majolr <[email protected]>
1 parent 151db73 commit 9d2e8ff

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+2361
-0
lines changed

askme/.streamlit/config.toml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
[client]
2+
showErrorDetails = false
3+
showSidebarNavigation = false
4+
toolbarMode = "viewer"
5+
6+
[browser]
7+
gatherUsageStats = false

askme/README.md

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
[![License: UPL](https://img.shields.io/badge/license-UPL-green)](https://img.shields.io/badge/license-UPL-green) [![Quality gate](https://sonarcloud.io/api/project_badges/quality_gate?project=oracle-devrel_tech-content-heatwave)](https://sonarcloud.io/dashboard?id=oracle-devrel_tech-content-heatwave)
2+
3+
# HeatWave GenAI Apps: AskME
4+
AskME is a suite of features designed to empower users to maximize the potential of their data utilizing cutting-edge artificial intelligence capabilities offered by HeatWave GenAI. This comprehensive solution offers the following functionalities:
5+
6+
1. Find Relevant Documents: Users can provide a prompt, and AskME will retrieve and present relevant documents in a user-friendly manner.
7+
8+
2. Free-Style Answer Generation: Users can ask questions, and AskME will include relevant information from the knowledge base to answer the question.
9+
10+
3. Summarized Answer Generation: Users can ask questions, and AskME will summarize relevant information from the knowledge base which is related to the question.
11+
12+
4. Chatbot Functionality: AskME allows users to ask follow-up questions and review their chat history.
13+
14+
5. Knowledge Base Management: Users can create and delete the vector tables.
15+
16+
## Prerequisite
17+
18+
You must have an OCI account. [Click here](https://docs.oracle.com/en/cloud/paas/content-cloud/administer/create-and-activate-oracle-cloud-account.html) for more information about Oracle Cloud account creation and activation. Free-tier accounts are currently not supported for the deployment of AskME resources.
19+
20+
There are required OCI resources (see the [Terraform documentation](./terraform/README.md) for more information) that are needed for this tutorial.
21+
22+
## Getting Started: answer questions using your documents
23+
24+
### Create a vector table
25+
26+
In the AskME app, it is easy to use your documents to create a new vector table.
27+
28+
<div style="text-align: center;" >
29+
<img src="assets/askme_kb_interface.png" alt="AskME Knowledge Base interface" width="72%" >
30+
</div>
31+
32+
From the `Knowledge Base Management` tab (${\textsf{\color{red}1}}$), under `Create Vector Table` (${\textsf{\color{red}2}}$), you can choose to upload one or more documents to AskME (${\textsf{\color{red}3}}$):
33+
- Here is a sample document you can download and use for that purpose: [Onboarding Checklist for New Hires at Nexus Innovations.pdf](./assets/Onboarding%20Checklist%20for%20New%20Hires%20at%20Nexus%20Innovations.pdf)<br />
34+
- Feel free to use your own documents to try the vector table creation.
35+
36+
After having browsed and selected the relevant files, you can change the vector table name if the default one does not match your needs (${\textsf{\color{red}4}}$).<br />
37+
This name will be used to identify the vector table, and may correspond to the common denominator of all selected files.
38+
39+
Then click on the `Upload` button to start the vector table creation process (${\textsf{\color{red}5}}$).<br />
40+
For the sample document provided earlier, this process should take 30-60 seconds. It may take several minutes if multiple files/bigger files are selected.
41+
42+
Once the vector table has been created, a green message is displayed, explaining that the table creation was successful, and the new table name should be added to the `Selected Vector Tables` list (${\textsf{\color{red}6}}$).
43+
<br />
44+
45+
### Use the vector table to answer questions
46+
47+
Any existing vector table can be used in AskME to generate an accurate answer, with references to the original documents.
48+
49+
<div style="text-align: center;" >
50+
<img src="assets/askme_answer_interface.png" alt="AskME free-style answer" width="72%" >
51+
</div>
52+
53+
From the `Free-style Answer` tab (${\textsf{\color{red}1}}$), you can enter your question in the input field (${\textsf{\color{red}3}}$).<br />
54+
Here, we choose to ask a question related to the sample document uploaded in the previous section: *What are the onboarding steps for new hires at Nexus Innovation?*
55+
56+
Please make sure that all vector tables needed for the question are selected in the Knowledge Base Selection area (${\textsf{\color{red}2}}$), and then you can click on the `Answer Question` button (${\textsf{\color{red}4}}$).
57+
58+
The answer should appear under the `Answer Question` button after a few seconds, followed by a clickable list of document references that have been used to generate the answer.
59+
60+
## Contributing
61+
62+
This project is open source. Please submit your contributions by forking this repository and submitting a pull request! Oracle appreciates any contributions that are made by the open source community.
63+
64+
## Acknowledgments
65+
66+
- [Oracle Cloud Infrastructure (OCI)](https://www.oracle.com/cloud/)
67+
- [Streamlit Documentation](https://docs.streamlit.io/)
68+
69+
## Security
70+
71+
Please consult the [security guide](./SECURITY.md) for our responsible security
72+
vulnerability disclosure process.
73+
74+
## License
75+
76+
Copyright (c) 2025 Oracle and/or its affiliates.
77+
78+
Licensed under the Universal Permissive License (UPL), Version 1.0.
79+
80+
See [LICENSE](LICENSE) for more details.
81+
82+
For third party licenses, see [THIRD_PARTY_LICENSES](licenses/THIRD_PARTY_LICENSES.txt).
83+
84+
For HeatWave User Guide legal information, see the [Legal Notices] (https://dev.mysql.com/doc/heatwave/en/preface.html#legalnotice).
85+
86+
ORACLE AND ITS AFFILIATES DO NOT PROVIDE ANY WARRANTY WHATSOEVER, EXPRESS OR IMPLIED, FOR ANY SOFTWARE, MATERIAL OR CONTENT OF ANY KIND CONTAINED OR PRODUCED WITHIN THIS REPOSITORY, AND IN PARTICULAR SPECIFICALLY DISCLAIM ANY AND ALL IMPLIED WARRANTIES OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE. FURTHERMORE, ORACLE AND ITS AFFILIATES DO NOT REPRESENT THAT ANY CUSTOMARY SECURITY REVIEW HAS BEEN PERFORMED WITH RESPECT TO ANY SOFTWARE, MATERIAL OR CONTENT CONTAINED OR PRODUCED WITHIN THIS REPOSITORY. IN ADDITION, AND WITHOUT LIMITING THE FOREGOING, THIRD PARTIES MAY HAVE POSTED SOFTWARE, MATERIAL OR CONTENT TO THIS REPOSITORY WITHOUT ANY REVIEW. USE AT YOUR OWN RISK.
87+

askme/SECURITY.md

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
# Reporting security vulnerabilities
2+
3+
Oracle values the independent security research community and believes that
4+
responsible disclosure of security vulnerabilities helps us ensure the security
5+
and privacy of all our users.
6+
7+
Please do NOT raise a GitHub Issue to report a security vulnerability. If you
8+
believe you have found a security vulnerability, please submit a report to
9+
[[email protected]][1] preferably with a proof of concept. Please review
10+
some additional information on [how to report security vulnerabilities to Oracle][2].
11+
We encourage people who contact Oracle Security to use email encryption using
12+
[our encryption key][3].
13+
14+
We ask that you do not use other channels or contact the project maintainers
15+
directly.
16+
17+
Non-vulnerability related security issues including ideas for new or improved
18+
security features are welcome on GitHub Issues.
19+
20+
## Security updates, alerts and bulletins
21+
22+
Security updates will be released on a regular cadence. Many of our projects
23+
will typically release security fixes in conjunction with the
24+
Oracle Critical Patch Update program. Additional
25+
information, including past advisories, is available on our [security alerts][4]
26+
page.
27+
28+
## Security-related information
29+
30+
We will provide security related information such as a threat model, considerations
31+
for secure use, or any known security issues in our documentation. Please note
32+
that labs and sample code are intended to demonstrate a concept and may not be
33+
sufficiently hardened for production use.
34+
35+
[1]: mailto:[email protected]
36+
[2]: https://www.oracle.com/corporate/security-practices/assurance/vulnerability/reporting.html
37+
[3]: https://www.oracle.com/security-alerts/encryptionkey.html
38+
[4]: https://www.oracle.com/security-alerts/

0 commit comments

Comments
 (0)