{"id":31785459,"url":"https://github.com/filaforge/filament-opensource-chat","last_synced_at":"2025-10-10T11:55:24.257Z","repository":{"id":310710869,"uuid":"1040960046","full_name":"filaforge/filament-opensource-chat","owner":"filaforge","description":"Filament plugin for open source chat models","archived":false,"fork":false,"pushed_at":"2025-08-19T20:33:09.000Z","size":32,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-08-19T20:35:03.482Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/filaforge.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-08-19T19:07:56.000Z","updated_at":"2025-08-19T20:33:09.000Z","dependencies_parsed_at":"2025-08-19T20:35:07.780Z","dependency_job_id":"7ebec8ff-e457-4906-b81a-2ccd9ad09758","html_url":"https://github.com/filaforge/filament-opensource-chat","commit_stats":null,"previous_names":["filaforge/filament-opensource-chat"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/filaforge/filament-opensource-chat","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/filaforge%2Ffilament-opensource-chat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/filaforge%2Ffilament-opensource-chat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/filaforge%2Ffilament-opensource-chat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/filaforge%2Ffilament-opensource-chat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/filaforge","download_url":"https://codeload.github.com/filaforge/filament-opensource-chat/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/filaforge%2Ffilament-opensource-chat/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279003716,"owners_count":26083610,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-10T02:00:06.843Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-10-10T11:55:12.746Z","updated_at":"2025-10-10T11:55:24.248Z","avatar_url":"https://github.com/filaforge.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Filaforge Opensource Chat\n\nA powerful Filament plugin that integrates various open-source AI chat capabilities directly into your admin panel.\n\n## Features\n\n- **Multi-Model Support**: Chat with various open-source AI models\n- **Conversation Management**: Save, organize, and continue chat conversations\n- **Model Selection**: Choose from available open-source AI models\n- **Customizable Settings**: Configure API endpoints, models, and chat parameters\n- **Real-time Chat**: Live chat experience with streaming responses\n- **Conversation History**: Keep track of all your AI conversations\n- **Export Conversations**: Save and share chat transcripts\n- **Role-based Access**: Configurable user permissions and access control\n- **Context Awareness**: Maintain conversation context across sessions\n- **Local Deployment**: Support for self-hosted AI models\n\n## Installation\n\n### 1. Install via Composer\n\n```bash\ncomposer require filaforge/opensource-chat\n```\n\n### 2. Publish \u0026 Migrate\n\n```bash\n# Publish provider groups (config, views, migrations)\nphp artisan vendor:publish --provider=\"Filaforge\\\\OpensourceChat\\\\Providers\\\\OpensourceChatServiceProvider\"\n\n# Run migrations\nphp artisan migrate\n```\n\n### 3. Register Plugin\n\nAdd the plugin to your Filament panel provider:\n\n```php\nuse Filament\\Panel;\n\npublic function panel(Panel $panel): Panel\n{\n    return $panel\n        // ... other configuration\n        -\u003eplugin(\\Filaforge\\OpensourceChat\\OpensourceChatPlugin::make());\n}\n```\n\n## Setup\n\n### Configuration\n\nThe plugin will automatically:\n- Publish configuration files to `config/opensource-chat.php`\n- Publish view files to `resources/views/vendor/opensource-chat/`\n- Publish migration files to `database/migrations/`\n- Register necessary routes and middleware\n\n### Open Source AI Configuration\n\nConfigure your open-source AI endpoints in the published config file:\n\n```php\n// config/opensource-chat.php\nreturn [\n    'default_provider' =\u003e env('OS_CHAT_PROVIDER', 'local'),\n    'providers' =\u003e [\n        'local' =\u003e [\n            'base_url' =\u003e env('OS_CHAT_LOCAL_URL', 'http://localhost:8000'),\n            'api_key' =\u003e env('OS_CHAT_LOCAL_KEY', ''),\n            'model' =\u003e env('OS_CHAT_LOCAL_MODEL', 'llama3'),\n        ],\n        'fireworks' =\u003e [\n            'base_url' =\u003e env('OS_CHAT_FIREWORKS_URL', 'https://api.fireworks.ai'),\n            'api_key' =\u003e env('OS_CHAT_FIREWORKS_KEY', ''),\n            'model' =\u003e env('OS_CHAT_FIREWORKS_MODEL', 'llama-v2-7b-chat'),\n        ],\n        'together' =\u003e [\n            'base_url' =\u003e env('OS_CHAT_TOGETHER_URL', 'https://api.together.xyz'),\n            'api_key' =\u003e env('OS_CHAT_TOGETHER_KEY', ''),\n            'model' =\u003e env('OS_CHAT_TOGETHER_MODEL', 'meta-llama/Llama-2-7b-chat-hf'),\n        ],\n    ],\n    'max_tokens' =\u003e env('OS_CHAT_MAX_TOKENS', 4096),\n    'temperature' =\u003e env('OS_CHAT_TEMPERATURE', 0.7),\n    'stream' =\u003e env('OS_CHAT_STREAM', true),\n    'timeout' =\u003e env('OS_CHAT_TIMEOUT', 60),\n];\n```\n\n### Environment Variables\n\nAdd these to your `.env` file:\n\n```env\nOS_CHAT_PROVIDER=local\nOS_CHAT_LOCAL_URL=http://localhost:8000\nOS_CHAT_LOCAL_KEY=your_local_api_key_here\nOS_CHAT_LOCAL_MODEL=llama3\nOS_CHAT_FIREWORKS_URL=https://api.fireworks.ai\nOS_CHAT_FIREWORKS_KEY=your_fireworks_api_key_here\nOS_CHAT_FIREWORKS_MODEL=llama-v2-7b-chat\nOS_CHAT_TOGETHER_URL=https://api.together.xyz\nOS_CHAT_TOGETHER_KEY=your_together_api_key_here\nOS_CHAT_TOGETHER_MODEL=meta-llama/Llama-2-7b-chat-hf\nOS_CHAT_MAX_TOKENS=4096\nOS_CHAT_TEMPERATURE=0.7\nOS_CHAT_STREAM=true\nOS_CHAT_TIMEOUT=60\n```\n\n### Getting API Keys\n\n#### Fireworks AI\n1. Visit [Fireworks AI](https://fireworks.ai/)\n2. Create an account and navigate to API keys\n3. Generate a new API key\n4. Copy the key to your `.env` file\n\n#### Together AI\n1. Visit [Together AI](https://together.ai/)\n2. Sign up and go to API keys section\n3. Create a new API key\n4. Copy the key to your `.env` file\n\n#### Local Models\nFor local deployment, you can use:\n- **Ollama**: Local model serving\n- **LM Studio**: Desktop AI model interface\n- **Custom endpoints**: Your own AI model servers\n\n## Usage\n\n### Accessing Opensource Chat\n\n1. Navigate to your Filament admin panel\n2. Look for the \"Opensource Chat\" menu item\n3. Start chatting with open-source AI models\n\n### Starting a Conversation\n\n1. **Select Provider**: Choose from available AI providers\n2. **Select Model**: Choose the specific AI model to use\n3. **Type Your Message**: Enter your question or prompt\n4. **Send Message**: Submit your message to the AI\n5. **View Response**: See the AI's response in real-time\n6. **Continue Chat**: Keep the conversation going\n\n### Managing Conversations\n\n1. **New Chat**: Start a fresh conversation\n2. **Save Chat**: Automatically save important conversations\n3. **Load Chat**: Resume previous conversations\n4. **Export Chat**: Download conversation transcripts\n5. **Delete Chat**: Remove unwanted conversations\n\n### Advanced Features\n\n- **Provider Switching**: Switch between different AI providers\n- **Model Selection**: Choose from available models per provider\n- **Parameter Tuning**: Adjust temperature, max tokens, and other settings\n- **Context Management**: Maintain conversation context across sessions\n- **Streaming Responses**: Real-time AI responses for better user experience\n\n## Troubleshooting\n\n### Common Issues\n\n- **API key errors**: Verify your API keys are correct and have sufficient credits\n- **Connection failures**: Check if the AI service endpoints are accessible\n- **Model not available**: Ensure the selected model is available in your plan\n- **Rate limiting**: Check your API rate limits and usage\n\n### Debug Steps\n\n1. Check the plugin configuration:\n```bash\nphp artisan config:show opensource-chat\n```\n\n2. Verify routes are registered:\n```bash\nphp artisan route:list | grep opensource-chat\n```\n\n3. Test API connectivity:\n```bash\n# Test local endpoint\ncurl http://localhost:8000/health\n\n# Test external endpoints\ncurl -H \"Authorization: Bearer YOUR_API_KEY\" https://api.fireworks.ai/v1/models\n```\n\n4. Check environment variables:\n```bash\nphp artisan tinker\necho env('OS_CHAT_PROVIDER');\necho env('OS_CHAT_LOCAL_URL');\n```\n\n5. Clear caches:\n```bash\nphp artisan optimize:clear\n```\n\n6. Check logs for errors:\n```bash\ntail -f storage/logs/laravel.log\n```\n\n### Provider-Specific Issues\n\n#### Local Models\n- **Service not running**: Ensure your local AI service is started\n- **Port conflicts**: Check if the required ports are available\n- **Model not loaded**: Verify the model is properly loaded in your service\n\n#### Fireworks AI\n- **Authentication errors**: Check API key and permissions\n- **Model availability**: Ensure the model is available in your plan\n- **Rate limits**: Monitor your API usage and limits\n\n#### Together AI\n- **API key issues**: Verify your Together AI API key\n- **Model access**: Check if you have access to the selected model\n- **Service status**: Check Together AI service status\n\n## Security Considerations\n\n### Access Control\n\n- **Role-based permissions**: Restrict access to authorized users only\n- **API key security**: Never expose API keys in client-side code\n- **User isolation**: Ensure users can only access their own conversations\n- **Audit logging**: Track all chat activities and API usage\n\n### Best Practices\n\n- Use environment variables for API keys\n- Implement proper user authentication\n- Monitor API usage and costs\n- Regularly rotate API keys\n- Set appropriate rate limits\n- Use HTTPS for external API calls\n\n## Performance Optimization\n\n### Local Deployment\n\n- **Resource allocation**: Ensure sufficient RAM and CPU for models\n- **Model optimization**: Use quantized models for better performance\n- **Caching**: Implement response caching for common queries\n- **Load balancing**: Use multiple model instances if needed\n\n### External APIs\n\n- **Connection pooling**: Reuse HTTP connections when possible\n- **Request batching**: Batch multiple requests when feasible\n- **Response caching**: Cache responses to reduce API calls\n- **Fallback strategies**: Implement fallback to local models\n\n## Uninstall\n\n### 1. Remove Plugin Registration\n\nRemove the plugin from your panel provider:\n```php\n// remove -\u003eplugin(\\Filaforge\\OpensourceChat\\OpensourceChatPlugin::make())\n```\n\n### 2. Roll Back Migrations (Optional)\n\n```bash\nphp artisan migrate:rollback\n# or roll back specific published files if needed\n```\n\n### 3. Remove Published Assets (Optional)\n\n```bash\nrm -f config/opensource-chat.php\nrm -rf resources/views/vendor/opensource-chat\n```\n\n### 4. Remove Package and Clear Caches\n\n```bash\ncomposer remove filaforge/opensource-chat\nphp artisan optimize:clear\n```\n\n### 5. Clean Up Environment Variables\n\nRemove these from your `.env` file:\n```env\nOS_CHAT_PROVIDER=local\nOS_CHAT_LOCAL_URL=http://localhost:8000\nOS_CHAT_LOCAL_KEY=your_local_api_key_here\nOS_CHAT_LOCAL_MODEL=llama3\nOS_CHAT_FIREWORKS_URL=https://api.fireworks.ai\nOS_CHAT_FIREWORKS_KEY=your_fireworks_api_key_here\nOS_CHAT_FIREWORKS_MODEL=llama-v2-7b-chat\nOS_CHAT_TOGETHER_URL=https://api.together.xyz\nOS_CHAT_TOGETHER_KEY=your_together_api_key_here\nOS_CHAT_TOGETHER_MODEL=meta-llama/Llama-2-7b-chat-hf\nOS_CHAT_MAX_TOKENS=4096\nOS_CHAT_TEMPERATURE=0.7\nOS_CHAT_STREAM=true\nOS_CHAT_TIMEOUT=60\n```\n\n## Support\n\n- **Documentation**: [GitHub Repository](https://github.com/filaforge/opensource-chat)\n- **Issues**: [GitHub Issues](https://github.com/filaforge/opensource-chat/issues)\n- **Discussions**: [GitHub Discussions](https://github.com/filaforge/opensource-chat/discussions)\n\n## Contributing\n\nWe welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details.\n\n## License\n\nThis plugin is open-sourced software licensed under the [MIT license](LICENSE).\n\n---\n\n**Made with ❤️ by the Filaforge Team**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffilaforge%2Ffilament-opensource-chat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffilaforge%2Ffilament-opensource-chat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffilaforge%2Ffilament-opensource-chat/lists"}