Chat/conversation history, entity relationship diagram
Some loose opinions which may be useful but may be completely off:


The model looks OK and should be scalable as far as I can tell.
Relational model (3NF) is the king of storage size, and data consistency. It's not the king of "easy querying". See customer_id note below. 
In actual long term business, maintainability is often more important than performance. 
Don't worry about partitioning too soon. You may never see this first 0.5 TB of customer data in your database. But consider making customer_id the part of PK in all tables if this is going to be a multi-tenant app. It will make scaling up (think: sharding / separating tenants) easier.
The thread ID might be as well synonymous to chat_lines.id of top level item. 
tsearch is OK, but for large scale, fancy fulltext search you might need to employ some outside tools like ElasticSearch / Sphinx / etc.