Spaces:
Running
Running
File size: 7,396 Bytes
3a0706f 29c30f2 3a0706f 29c30f2 3a0706f 29c30f2 3a0706f 29c30f2 3a0706f ca05c14 3a0706f ca05c14 3a0706f ca05c14 3a0706f ca05c14 3a0706f ca05c14 3a0706f ca05c14 3a0706f ca05c14 3a0706f 29c30f2 3a0706f |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 |
# ChatDoctor: Your Custom Medical AI Assistant




## Overview
ChatDoctor is an AI-powered medical conversation assistant built on advanced language model technology. It provides informative responses to health-related queries while maintaining appropriate medical disclaimers. This project adapts the [ChatDoctor model](https://huggingface.co/zl111/ChatDoctor) from Hugging Face into an accessible, user-friendly interface.
## Features
- **Medical Question Answering**: Get informative responses about symptoms, conditions, treatments, and general health information
- **Conversational Interface**: Natural dialogue-based interaction for a seamless experience
- **Educational Support**: Explanations of medical terminology, conditions, and procedures
- **Responsible AI**: Clear disclaimers and ethical boundaries for medical information
- **Examples**: Pre-loaded sample questions to help users get started
## Live Demo
Try the live demo on Hugging Face Spaces: [Your ChatDoctor Demo](https://huggingface.co/spaces/YOUR_USERNAME/ChatDoctor)
## How It Works
### Technology Stack
- **Base Model**: Fine-tuned medical language model from [zl111/ChatDoctor](https://huggingface.co/zl111/ChatDoctor)
- **Framework**: Built with Hugging Face Transformers and Gradio
- **Deployment**: Hosted on Hugging Face Spaces
### Key Components
1. **Language Model**: Powers the understanding of medical queries and generation of appropriate responses
2. **Context Management**: Maintains conversation history for coherent multi-turn interactions
3. **User Interface**: Clean, intuitive interface for asking questions and receiving answers
4. **Disclaimer System**: Ensures users understand the educational nature of responses
### How to Use
1. Type your medical question in the text box
2. Click "Send" or press Enter
3. Read the AI's response
4. Continue the conversation with follow-up questions
5. Use "Clear Conversation" to start fresh
## Example Interactions
### Example 1: Understanding Symptoms
**User**: "What are the common symptoms of diabetes?"
**ChatDoctor**: "Diabetes presents with several characteristic symptoms:
1. Increased thirst (polydipsia) and frequent urination (polyuria)
2. Unexplained weight loss despite increased hunger
3. Fatigue and weakness
4. Blurred vision
5. Slow-healing sores or frequent infections
6. Tingling or numbness in hands or feet (for Type 2 diabetes)
Type 1 diabetes symptoms often develop quickly over weeks, while Type 2 diabetes symptoms may develop gradually or be subtle. If you're experiencing these symptoms, it's important to consult with a healthcare provider for proper evaluation and diagnosis. Early detection and management are crucial for preventing complications."
### Example 2: Medication Information
**User**: "What are the side effects of ibuprofen?"
**ChatDoctor**: "Ibuprofen is a nonsteroidal anti-inflammatory drug (NSAID) commonly used to treat pain, inflammation, and fever. Possible side effects include:
Common side effects:
- Stomach pain, heartburn, or indigestion
- Nausea or vomiting
- Headache or dizziness
- Mild rash
More serious side effects (less common):
- Stomach bleeding or ulcers
- Kidney problems
- Liver problems
- Allergic reactions
- Increased risk of heart attack or stroke with long-term use
To minimize risks, take ibuprofen with food, use the lowest effective dose for the shortest duration needed, and consult with a healthcare provider before use if you have underlying health conditions or take other medications.
Disclaimer: This information is for educational purposes only and not a substitute for professional medical advice."
## Technical Details
### Model Specifications
- **Base Model**: ChatDoctor is a next-generation AI doctor model that is based on the LLaMA model
- **Model Type**: Causal Language Model (CLM)
- **Response Generation**: Temperature=0.7, Top-p=0.9
- **Context Window**: 512 tokens
- **Architecture**: Transformer-based neural network
### Conversation Processing
```python
def generate_response(user_input):
# Add user input to history
conversation_history.append(f"User: {user_input}")
# Construct the prompt with system instructions and conversation history
prompt = system_prompt + "\n\n"
prompt += "\n".join(conversation_history[-10:])
prompt += "\nAI Assistant: "
# Generate the response using the model
inputs = tokenizer(prompt, return_tensors="pt").to(device)
outputs = model.generate(
input_ids=inputs.input_ids,
attention_mask=inputs.attention_mask,
max_new_tokens=512,
temperature=0.7,
top_p=0.9,
do_sample=True
)
response = tokenizer.decode(outputs[0][inputs.input_ids.shape[1]:], skip_special_tokens=True)
# Add response to history
conversation_history.append(f"AI Assistant: {response}")
return response
```
### Interface Components
1. **Chatbot Interface**: Displays the conversation history
2. **Input Box**: Text field for user questions
3. **Send Button**: Submits the user question
4. **Clear Button**: Resets the conversation
5. **Examples Section**: Pre-populated example questions
6. **Disclaimer**: Medical information advisory
## Limitations and Ethical Guidelines
- **Not a Diagnostic Tool**: ChatDoctor cannot diagnose medical conditions
- **Educational Purposes Only**: Information is provided for learning, not as medical advice
- **No Emergency Services**: Not suitable for emergency situations
- **Not a Replacement**: Does not replace consultation with qualified healthcare professionals
- **Knowledge Limitations**: May not have information about very recent medical developments
- **Privacy**: No personal medical data is stored
## Deployment
This project is deployed on Hugging Face Spaces, providing a scalable and accessible platform for users worldwide. The deployment uses:
- **Gradio Web Interface**: For user interaction
- **Hugging Face Transformers**: For model serving
- **GPU Acceleration**: For faster response generation
## Future Improvements
- **Specialization**: Adding support for specific medical specialties
- **Multilingual Support**: Expanding to multiple languages
- **Image Analysis**: Adding capability to discuss uploaded medical images
- **Voice Interface**: Adding speech recognition and text-to-speech
- **Medical Reference Links**: Providing citations to trusted medical resources
## Disclaimer
This AI assistant provides information for educational purposes only. It is not a substitute for professional medical advice, diagnosis, or treatment. Always seek the advice of your physician or other qualified health provider with any questions you may have regarding a medical condition. Never disregard professional medical advice or delay in seeking it because of something you have read or heard from this AI assistant.
## Acknowledgments
- [Hugging Face](https://huggingface.co/) for the model hosting and Spaces platform
- [ChatDoctor Team](https://huggingface.co/zl111/ChatDoctor) for the base model
- The open-source AI community for tools and resources
---
|